jQuery ajax不工作,获取关于未定义变量的php错误
我在这个问题上被难住了。我试图通过ajax简单地发布一个变量。下面是我的javascript/jquery代码的内容jQuery ajax不工作,获取关于未定义变量的php错误,php,jquery,ajax,Php,Jquery,Ajax,我在这个问题上被难住了。我试图通过ajax简单地发布一个变量。下面是我的javascript/jquery代码的内容 var name = "Bob"; $(".save").click(function(){ $.ajax({ type: "POST", url: "ajax.php", data: {fname:name} }).done(function( msg
var name = "Bob";
$(".save").click(function(){
$.ajax({
type: "POST",
url: "ajax.php",
data: {fname:name}
}).done(function( msg ) {
alert( "Data: " + msg );
});
});
这是我的ajax.php文件:
<?php
$data = $_POST['fname'];
?>
问题是我总是在php错误日志中看到这个错误
[15-Aug-2013 11:05:26]PHP通知:未定义索引:第2行/Applications/MAMP/htdocs/Project/ajax.PHP中的fname
我做错了什么?您的代码绝对正确。也许你的问题来自.htaccess,它进行了重定向
当您访问php文件时。你应该仔细检查一下。
您是否尝试过var\u dump
您的$\u帖子
?使用Firebug之类的工具,并回显您的$\u帖子。使用Firebug,您可以看到得到的响应。但我同意张孝的观点。听起来您的帖子设置不正确。使用Firebug,我可以看到ajax.php上的状态为“302 Found”,如果单击“帖子”选项卡,我可以看到其中的正确数据。但仍然会出现未定义的索引错误。奇怪。“ajax.php上的状态是'302 Found'”——所以是重定向。这真的是你想要的吗?在PHP脚本处理POST数据之后,您自己是否从PHP脚本进行重定向?(由于浏览器将通过get请求新的URL,因此在302重定向时,POST数据将丢失。)阅读302响应,检查新位置,并在您的ajax调用中使用它,可能是它重定向到相同的URL,但格式不同,如删除www或添加斜线,请检查