朋友我有问题。我有一个会员区功能,它将使用jquery显示收件箱信息的数量。
这就是我所做的。
function listner_requests(){
$.ajax({
type: "POST",
url: "http://src.abc.com/listner.php",
data: "action=listner_requests",
success: function(responseText, statusText, xhr) { alert(responseText);
},
error: function(data, statusCode) {
alert("ERROR: "+data)
}
});
}
listner.php
if($_POST['action']=="listner_requests"){
$sql="SELECT messages FROM friend_requests WHERE message_to='".$_SESSION['MEMBER_ID']."'";
$data=mysql_query($sql,$profile);
$count=mysql_num_rows($data);
echo $count;
exit();
}
我在不使用ajax的情况下测试它是否正常工作。它完全有效。
但如果我使用ajax方法,它将不会提示正确的响应。 它会产生错误。我做错了什么?请帮我。感谢
答案 0 :(得分:1)
不是解决方案 - 而是帮助调试的评论(由于代码不会出现,因此无法发表评论)
您的代码:
success: function(responseText, statusText, xhr) {
alert(responseText);
},
error: function(data, statusCode) {
alert("ERROR: "+data)
}
有点误导,因为你有混乱的参数。你会发现调试更清楚:
success: function(data) {
alert(data);
},
error: function(xhr, status, textError) {
alert('Error ' + xhr.responseText + ' - ' + status + ' - ' + textError);
}
如果xhr.responseText为空(正如您在评论中所述),那么textError可能会显示答案。如果做不到,状态会......
答案 1 :(得分:0)
假设您想要计数作为响应..我更希望返回数据为json ... 检查一下......看看它是否有效......
function listner_requests(){
$.ajax({
type: "POST",
dataType:'json',
url: "http://src.abc.com/listner.php",
data: "action=listner_requests",
success: function(data) { alert(data.totalcount);
},
error: function(data, statusCode) {
alert("ERROR: "+data)
}
});
}
listener.php
if($_POST['action']=="listner_requests"){
$sql="SELECT messages FROM friend_requests WHERE message_to='".$_SESSION['MEMBER_ID']."'";
$data=mysql_query($sql,$profile);
$count=mysql_num_rows($data);
echo json_encode(array('totalcount'=>$count));
exit();
}