我有一個這樣的PHP命令。PHP創建一個JSON,Ajax無法讀取
$query = "SELECT * FROM $table WHERE user_id = 0";
$results = mysql_query($query)or die(mysql_error());
while($row = mysql_fetch_assoc($results)){
$values []= $row;
}
echo json_encode($values);
這就產生了一個JSON數組這樣
[{"id":"1","name":"amazon.com","url":"http:\/\/amazon.com","time":"5","credits":"0","user_id":"0"},{"id":"2","name":"google.com","url":"http:\/\/google.com","time":"4","credits":"0","user_id":"0"}]
此JSON陣列比變爲一個不同的網頁上的Ajax響應文本的一部分。
var ajaxd = ajax();
ajaxd.onreadystatechange = function(){
if(ajaxd.readyState == 4){
var nse = eval('('+ajaxd.responseText+')');
alert(nse['url']);
}
}
問題是......警報始終處於未定義狀態。我究竟做錯了什麼?
什麼基本的調試秀 - 確實resposeText包含什麼?你有什麼錯誤嗎? –
這與mysql無關。您可以使用從MySQL獲取的數據創建該數組,但在此之後,它完全是一個PHP數組。 –