我想獲得一個PHP文件設置,以從jQuery AJAX調用中返回MySQL數據庫查詢的結果。返回結果將是一個數組。我有一個非常基本的啓動在那裏,我只是得到一些基本的數據來回往返PHP文件,但我堅持一些基本的語法問題:
的PHP代碼:
$arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);
echo json_encode($arr);
jQuery的代碼:
$.post("dbFile.php", str, function(theResponse){
alert('the response: ' + theResponse);
var obj = $.parseJSON(theResponse);
alert(obj.a);
我可以打印出obj.a,obj.b,obj.c ...沒問題。問題是當我通過MySQL結果遞增時,我將增加一個計數器。因此,陣列未使用字母,它採用數字:
$arr[$i] = mysqlresults ... $i++;
因此,在JavaScript/jQuery的我有一個對象(不是一個數組)。例如,我可以打印出obj.a,但我無法打印出obj.2(例如)。換句話說,如果我用php數組中的數字替換字母,我不知道如何用JavaScript/jQuery打印出來。我能否以某種方式將parseJSON返回的對象更改爲數組(以便我可以循環)?
如果用'echo json_encode(array_values($ arr));'發送結果''它將保證是一個普通的(連續索引的)Javascript數組。 – mario 2011-06-07 03:40:44