2012-06-06 33 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