我通过AJAX将变量(winner_id)传递给ajax.php。似乎ajax工作正常,它传递变量,但我的ajax.php似乎没有得到它。我无法将其分配给php变量以供进一步使用。
这是我的代码:
function ajaxCall(winner_id) {
$.ajax
({
url: "ajax.php?winner_id=" + winner_id,
type: "GET",
success: function(response)
{
alert("The winner was passed!");
}
});
};
ajaxCall(winner_id);
<?php
session_start();
$winner_id = $_GET['winner_id'];
echo json_encode(array("winner_id" => $winner_id));
exit;
?>
现在,例如我在AJAX中传递 winner_id = 3 。当我打开它开发人员工具/网络/点击ajax.php /预览时,这就是我所看到的:
winner_id:“3” - &gt;这是正确的!
但是,如果我直接在浏览器中调用ajax.php,我会看到:
{
winner_id: null
}
如果我 var_dump($ _ GET,$ _POST),我会得到: array(0){} array(0){} 。
我100%肯定我的ajax调用正常工作,但是我不知道为什么我不能在php中获取值。我在stackoverflow上看过类似的问题,但无法找到答案。
我正在使用.htaccess进行错误转发,也许这可能是一个问题,因为对于其他人来说这个代码运行得很好。我真的需要帮助!谢谢!
答案 0 :(得分:0)
现在,例如我在AJAX中传递winner_id = 3。当我打开它时 开发者工具/网络/点击ajax.php /预览这就是我 见:
winner_id: "3" -> which is correct!
如果您检查开发人员工具中的响应,您还应该看到:
{
winner_id: 3
}
如果您在浏览器中调用ajax.php
,那么是,winner_id将为null。但是,如果您致电ajax.php?winner_id=3
,那么您应该会看到与上述相同的JSON响应。