2012-09-17 60 views
0

朋友我有一個問題。我有一個會員區域的功能,它會顯示使用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(); 
} 

我excecute的PHP沒有Ajax來測試它是否工作或沒有。它是完美的工作。

但如果我使用ajax方法,它不會提示正確的響應。 它會產生一個錯誤。我做錯了什麼嗎?請幫幫我。感謝

+1

你什麼錯誤? –

+0

檢查您的瀏覽器控制檯是否有任何錯誤。 –

+0

錯誤:[對象對象]這是我得到的警報 – vinu

回答

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可能會揭曉答案。如果做不到這一點,狀態會...

+0

感謝您的評論@Robbie它只是顯示「錯誤 - 錯誤 - 」,這意味着狀態是錯誤的,其他兩個是空白的 – vinu

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(); 

}