林目前正在嘗試做如下:如何在PHP創建一個二維數組,並通過它使用Javascript
- 請求從我image.js代碼
- 一個PHP文件在請求調用 - 從我的mysql數據庫查詢數據並將其保存在PHP數組中
- 將數組作爲JSON對象返回到image.js。
我NR 1 + NR 3覆蓋 - 與strugling什麼IM是如何拯救我的數據庫正確的屬性到PHP數組,並通過從JSON回調每個記錄之後迭代。
數據庫屬性例如:
player_id (unique key) || player_name || player_country || player_image || player_league ||
問題/挑戰1:保存陣列(這是林不知道的)
while ($row = mysql_fetch_assoc($res))
{
$myCallbackArray[] = array($row['player_id'], $row['player_name'], $row['player_country'], $row['player_image']);
}
- 以下陣列,將只成爲一個沒有維度的「平面陣列」,基於單獨保存所有相應的屬性player_id
?
給予一定的一些背景 - 假設數組是好的,我們再在「下一步」它發回給JS
$callback = $myCallbackArray;
echo json_encode(array('returned_val' => $callback));
問題/挑戰2:訪問數組在JS的值(這是林不知道的)
//Save the data
var url = "request.php"; //
var request = $.ajax({
type: "POST",
url: url,
dataType: 'json',
data: { user_id: id},
success: function(data)
{
//HERE WE HANDLE THE RETURNED ARRAY
if(data.returned_val) {
for(var i = 0; i < data.returned_val.length; i++){
//HERE I WOULD LIKE TO MAKE THE DIFFERENT ATTRIBUTES ACCESSABLE
}
},
error:function() {
//FAILURE
}
});
return false;
- 所以在這部分IM不知道如何實際處理從PHP多維數組。我假設我們需要將它保存在一個Javascript數組中,然後我們可以通過foreach循環迭代/訪問每個值 - 但是再一次, - 我怎麼不完全確定?
對於javascript部分,基本上用'for(;;)'循環遍歷數組,用'for..in'循環遍歷數組。所有你需要的信息在這裏:http://stackoverflow.com/questions/11922383/access-process-nested-objects-arrays-or-json – bfavaretto