【发布时间】:2012-10-29 04:14:11
【问题描述】:
我见过这样的问题,但似乎没有一个答案对我有用。我试图将 POST 数据发送到一个单独的 php 文件,该文件会将其插入数据库。我收到一条 PHP 通知:未定义索引 arg1 和 arg2 .....这里是 ajax:
function performAjaxSubmission() {
$.ajax({
url: 'likedata.php',
method: 'POST',
data: {
'action': 'save',
'arg1': '<?php echo $_SESSION['userId'];?>',
'arg2': '<?php echo $p;?>'
},
success: function() {
alert("success!");
}
});
return false; // <--- important, prevents the link's href (hash in this example) from executing.
}
jQuery(document).ready(function() {
$(".icon-thumbs-up").click(performAjaxSubmission);
});
这里是likedata.php
if(isset($_POST)){
$liker = $_POST['arg1'];
$likee = $_POST['arg2'];
$profile->insertLikes($liker, $likee);
}
谢谢!
【问题讨论】:
-
print_r($_POST);是否正确填充?
-
给 arg1 和 arg2 一个静态值,看看结果中的线索。
-
其他一些调试步骤:
var_dump您在发送的原始 PHP 文件中的值,这些值实际上是否正确地放入了 javascript($_SESSION值等)?如果它们在 php 端看起来不错,请在发送 AJAX 之前查看浏览器源代码,这些值是否正确显示在那里,是否有任何 JS 错误?如果没问题,那么发送表单并使用 Firebug 等查看它发送的内容,这些值是否出现在传出的 POST 中? (听起来你之前的回复没有,但可能有什么东西触发了它两次,最后一个电话是空的,发生了奇怪的事情) -
谢谢,我给了他们数值,但它仍然是空的