Unable to make a ajax async post request to the same page





.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ height:90px;width:728px;box-sizing:border-box;
}







0















I'm trying to make an async call to the same page but for some reason, the async call is not being made and hence getting "userinfo" undefined error! could someone please tell me what I'm doing wrong in this thank you!



<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script>
$( document ).ready(function() {
//getting location of the user and assigning it to the variable
$.get("http://ipinfo.io", function (response) {
var usercity=response.city;
console.log(usercity);
$.ajax({
//no need to provide url since we are making async call on the same page
type: "post",
data: {cityinfo:usercity},
});
}, "jsonp");
});
</script>

<?php
session_start();
$usercity=$_POST['cityinfo'];
echo $usercity;
?>









share|improve this question

























  • I tried var_dump($_POST) and it shows

    – Faizal Mohaideen Kadersha
    Jan 3 at 22:34











  • array (size=0) empty // if im correct the data is not being passed or the post request is not made!

    – Faizal Mohaideen Kadersha
    Jan 3 at 22:35


















0















I'm trying to make an async call to the same page but for some reason, the async call is not being made and hence getting "userinfo" undefined error! could someone please tell me what I'm doing wrong in this thank you!



<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script>
$( document ).ready(function() {
//getting location of the user and assigning it to the variable
$.get("http://ipinfo.io", function (response) {
var usercity=response.city;
console.log(usercity);
$.ajax({
//no need to provide url since we are making async call on the same page
type: "post",
data: {cityinfo:usercity},
});
}, "jsonp");
});
</script>

<?php
session_start();
$usercity=$_POST['cityinfo'];
echo $usercity;
?>









share|improve this question

























  • I tried var_dump($_POST) and it shows

    – Faizal Mohaideen Kadersha
    Jan 3 at 22:34











  • array (size=0) empty // if im correct the data is not being passed or the post request is not made!

    – Faizal Mohaideen Kadersha
    Jan 3 at 22:35














0












0








0








I'm trying to make an async call to the same page but for some reason, the async call is not being made and hence getting "userinfo" undefined error! could someone please tell me what I'm doing wrong in this thank you!



<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script>
$( document ).ready(function() {
//getting location of the user and assigning it to the variable
$.get("http://ipinfo.io", function (response) {
var usercity=response.city;
console.log(usercity);
$.ajax({
//no need to provide url since we are making async call on the same page
type: "post",
data: {cityinfo:usercity},
});
}, "jsonp");
});
</script>

<?php
session_start();
$usercity=$_POST['cityinfo'];
echo $usercity;
?>









share|improve this question
















I'm trying to make an async call to the same page but for some reason, the async call is not being made and hence getting "userinfo" undefined error! could someone please tell me what I'm doing wrong in this thank you!



<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script>
$( document ).ready(function() {
//getting location of the user and assigning it to the variable
$.get("http://ipinfo.io", function (response) {
var usercity=response.city;
console.log(usercity);
$.ajax({
//no need to provide url since we are making async call on the same page
type: "post",
data: {cityinfo:usercity},
});
}, "jsonp");
});
</script>

<?php
session_start();
$usercity=$_POST['cityinfo'];
echo $usercity;
?>






php ajax






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Jan 3 at 22:40









Quentin

658k728951057




658k728951057










asked Jan 3 at 22:32









Faizal Mohaideen KadershaFaizal Mohaideen Kadersha

176




176













  • I tried var_dump($_POST) and it shows

    – Faizal Mohaideen Kadersha
    Jan 3 at 22:34











  • array (size=0) empty // if im correct the data is not being passed or the post request is not made!

    – Faizal Mohaideen Kadersha
    Jan 3 at 22:35



















  • I tried var_dump($_POST) and it shows

    – Faizal Mohaideen Kadersha
    Jan 3 at 22:34











  • array (size=0) empty // if im correct the data is not being passed or the post request is not made!

    – Faizal Mohaideen Kadersha
    Jan 3 at 22:35

















I tried var_dump($_POST) and it shows

– Faizal Mohaideen Kadersha
Jan 3 at 22:34





I tried var_dump($_POST) and it shows

– Faizal Mohaideen Kadersha
Jan 3 at 22:34













array (size=0) empty // if im correct the data is not being passed or the post request is not made!

– Faizal Mohaideen Kadersha
Jan 3 at 22:35





array (size=0) empty // if im correct the data is not being passed or the post request is not made!

– Faizal Mohaideen Kadersha
Jan 3 at 22:35












1 Answer
1






active

oldest

votes


















1














First, you make a regular request to the PHP page. $_POST['cityinfo'] is undefined at this stage because you don't set it. The page includes an error message telling you that.



Second, you make a JSONP request to ipinfo.io, and call a callback function when you get a response.



Third, you make a second HTTP request to the PHP page. This time you do define $_POST['cityinfo']. You have no success handler to do anything at all with the response so, although $_POST['cityinfo']; is set, you don't see any effect of that (unless you were to use the developer tools Network tab to examine the response itself).



It is important to note that this is a second, distinct request to the same URL. The JavaScript does not travel back through time and set the $_POST['cityinfo']; variable in the previous request (and it is the response to the previous request that is still displayed in the browser window).






share|improve this answer
























  • that makes a lot a sens thanks for the insight il try to work on the network tab but i have never worked on it so far, so it will be quite an experience thank you!!!

    – Faizal Mohaideen Kadersha
    Jan 3 at 22:52












Your Answer






StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54030713%2funable-to-make-a-ajax-async-post-request-to-the-same-page%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









1














First, you make a regular request to the PHP page. $_POST['cityinfo'] is undefined at this stage because you don't set it. The page includes an error message telling you that.



Second, you make a JSONP request to ipinfo.io, and call a callback function when you get a response.



Third, you make a second HTTP request to the PHP page. This time you do define $_POST['cityinfo']. You have no success handler to do anything at all with the response so, although $_POST['cityinfo']; is set, you don't see any effect of that (unless you were to use the developer tools Network tab to examine the response itself).



It is important to note that this is a second, distinct request to the same URL. The JavaScript does not travel back through time and set the $_POST['cityinfo']; variable in the previous request (and it is the response to the previous request that is still displayed in the browser window).






share|improve this answer
























  • that makes a lot a sens thanks for the insight il try to work on the network tab but i have never worked on it so far, so it will be quite an experience thank you!!!

    – Faizal Mohaideen Kadersha
    Jan 3 at 22:52
















1














First, you make a regular request to the PHP page. $_POST['cityinfo'] is undefined at this stage because you don't set it. The page includes an error message telling you that.



Second, you make a JSONP request to ipinfo.io, and call a callback function when you get a response.



Third, you make a second HTTP request to the PHP page. This time you do define $_POST['cityinfo']. You have no success handler to do anything at all with the response so, although $_POST['cityinfo']; is set, you don't see any effect of that (unless you were to use the developer tools Network tab to examine the response itself).



It is important to note that this is a second, distinct request to the same URL. The JavaScript does not travel back through time and set the $_POST['cityinfo']; variable in the previous request (and it is the response to the previous request that is still displayed in the browser window).






share|improve this answer
























  • that makes a lot a sens thanks for the insight il try to work on the network tab but i have never worked on it so far, so it will be quite an experience thank you!!!

    – Faizal Mohaideen Kadersha
    Jan 3 at 22:52














1












1








1







First, you make a regular request to the PHP page. $_POST['cityinfo'] is undefined at this stage because you don't set it. The page includes an error message telling you that.



Second, you make a JSONP request to ipinfo.io, and call a callback function when you get a response.



Third, you make a second HTTP request to the PHP page. This time you do define $_POST['cityinfo']. You have no success handler to do anything at all with the response so, although $_POST['cityinfo']; is set, you don't see any effect of that (unless you were to use the developer tools Network tab to examine the response itself).



It is important to note that this is a second, distinct request to the same URL. The JavaScript does not travel back through time and set the $_POST['cityinfo']; variable in the previous request (and it is the response to the previous request that is still displayed in the browser window).






share|improve this answer













First, you make a regular request to the PHP page. $_POST['cityinfo'] is undefined at this stage because you don't set it. The page includes an error message telling you that.



Second, you make a JSONP request to ipinfo.io, and call a callback function when you get a response.



Third, you make a second HTTP request to the PHP page. This time you do define $_POST['cityinfo']. You have no success handler to do anything at all with the response so, although $_POST['cityinfo']; is set, you don't see any effect of that (unless you were to use the developer tools Network tab to examine the response itself).



It is important to note that this is a second, distinct request to the same URL. The JavaScript does not travel back through time and set the $_POST['cityinfo']; variable in the previous request (and it is the response to the previous request that is still displayed in the browser window).







share|improve this answer












share|improve this answer



share|improve this answer










answered Jan 3 at 22:39









QuentinQuentin

658k728951057




658k728951057













  • that makes a lot a sens thanks for the insight il try to work on the network tab but i have never worked on it so far, so it will be quite an experience thank you!!!

    – Faizal Mohaideen Kadersha
    Jan 3 at 22:52



















  • that makes a lot a sens thanks for the insight il try to work on the network tab but i have never worked on it so far, so it will be quite an experience thank you!!!

    – Faizal Mohaideen Kadersha
    Jan 3 at 22:52

















that makes a lot a sens thanks for the insight il try to work on the network tab but i have never worked on it so far, so it will be quite an experience thank you!!!

– Faizal Mohaideen Kadersha
Jan 3 at 22:52





that makes a lot a sens thanks for the insight il try to work on the network tab but i have never worked on it so far, so it will be quite an experience thank you!!!

– Faizal Mohaideen Kadersha
Jan 3 at 22:52




















draft saved

draft discarded




















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54030713%2funable-to-make-a-ajax-async-post-request-to-the-same-page%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Monofisismo

Angular Downloading a file using contenturl with Basic Authentication

Olmecas