2012-06-06 31 views
0

Hye。 我有一個PHP腳本(2個不同的MySQL查詢的2頁不同的表)返回此JSON字符串: (對不起,這是一個法國的應用程序)用jquery解析php腳本返回的JSON字符串

[{ 
    "statut":"2", 
    "0":"2", 
    "lib_statut":"En cours de traitement", 
    "1":"En cours de traitement", 
    "appelant":"GUEDIDER Jacqueline", 
    "2":"GUEDIDER Jacqueline", 
    "nom":"Virginie SORREL", 
    "3":"Virginie SORREL", 
    "date_creation":"05\/04\/2012 \u00e0 14:14:55", 
    "4":"05\/04\/2012 \u00e0 14:14:55", 
    "titre":"FACEO - Plus de message d'attente", 
    "5":"FACEO - Plus de message d'attente" 
}, 
{ 
    "nom":"Jonathan MORET", 
    "0":"Jonathan MORET", 
    "date_inter":"06\/04\/2012 \u00e0 11:18:07", 
    "1":"06\/04\/2012 \u00e0 11:18:07" 
}, 
{ 
    "nom":"Jonathan MORET", 
    "0":"Jonathan MORET", 
    "date_inter":"20\/04\/2012 \u00e0 08:22:53", 
    "1":"20\/04\/2012 \u00e0 08:22:53" 
}] 

第一個問題:有誰知道爲什麼每行記錄兩次(第一次使用索引,第二次使用列名)?

第二:如何解析我的jQuery腳本中的兩個對象?

在此先感謝。

+0

我們可以看到構建它的查詢嗎?這可能與爲什麼一切都是兩次有關。 –

回答

1

一切都出現了兩次,我充滿信心地預測,原因是因爲誰創造了JSON這樣做是利用人直接輸出mysql_fetch_array()而沒有$result_type參數。如果使用mysqli_fetch_array()/mysqli_result::fetch_array(),也是如此。

告訴他們(您?)使用mysql_fetch_assoc()代替。

實際上,用PDO代替。

如果你這樣做,你不必擔心處理「兩個」對象,因爲你只會有一個。

0

第一個問題:有誰知道爲什麼每行記錄了兩次(第一次是索引,第二次是列名)?

也許是一個錯誤的SQL查詢......;)沒有表結構和查詢它不可能說爲什麼......;

第二:如何解析我的jQuery腳本中的兩個對象?

我假設你有你的JSON分配給Javacript VAR DATAS:這裏是你如何訪問您的DATAS:

var datas = "yOURJSONSTRING"; // Replace here your json ... 
// then 
var firstEl = datas[0]; 
// Then you can use : 
console.log("Statut is : " +firstEl.statut); // consle is for debugging purpose on FF 
// then for 2nd and 3rd elements: 
var sndEl = datas[1]; 
var trdtEl = datas[2]; 

希望這將有助於...

問候;

mimiz