2012-07-14 38 views
-1

我有存取权限JSON数组元素

{ “USER_ID”: “2790”, “freelancer_name”: “”, “ORDER_ID”: “8895”, “orderamount”: “33638.00”, “PAYMENT_METHOD” : “”, “payment_desc”: “”, “order_st”: “NEWLINK”, “total_comission”: “3046.08”, “auto_increment_id”: “2”, “po_box”: “”, “国”: “”,” order_add “:””, “shipping_co”: “”, “重量”: “0”,其中 “fname”: “”, “姓”: “”, “shippingcost”: “0.00”, “paymentst”: “”}

{“user_id”:“2790”,“freelancer_name”:“”,“order_id”:“9121”,“orderamount”:“0.00”,“payment_method”:“”,“payment_desc”:“”, “order_st”: “NEWLINK”, “total_comission”: “0.00”, “auto_increment_id”: “1”, “po_box”: “”, “国”: “”, “order_add”: “”, “shipping_co”:” ”, “重量”: “0” 时,其中 “fname”: “”, “姓氏”: “”, “shippingcost”: “0.00”, “paymentst”: “”}

从这个PHP代码来

$result = mysql_query ("SELECT * FROM order_list"); 
$myjsons = array(); 
$i = 0; 
while ($row = mysql_fetch_assoc($result)) { 
    $myjsons[$i] = json_encode(array($row)); 
$myjsons[$i] = substr($myjsons[$i], 1, -1); 

    $i++; 
} 


echo json_encode($myjsons); 

我想有机会获得每一个元素,但它似乎阵列只是一个字符串,并没有像user_ID的元素 - ORDER_ID

这里是JavaScript读取JSON

$("#txtfld").val(data[0]); 
$("#resultTXT").val(data[1]); 

我想让他们像

txtfld =数据[0] .user_id和resultTXT =数据[0] .order_id ...

所以这个问题是让用户ID订单id和等

请帮助

+2

您没有任何阵列。数组有[...] – 2012-07-14 01:22:35

+1

'JSON.parse(STR)'将解析字符串并返回对象 – nbrooks 2012-07-14 01:22:40

+0

请格式化你的代码。 – 2012-07-14 01:26:33

回答

3

如果将结果返回给用户,该行之前再次使用json_encode(如您的echo语句)...

$myjsons[$i] = json_encode(array($row)); 

...不json_enc在循环内部。你是双重编码。它也似乎你不会在这里使用array()。所以只是做:

$myjsons[$i] = $row; 

其实,你可以这样做:

$myjsons[] = $row; 

,摆脱:

$myjsons[$i] = substr($myjsons[$i], 1, -1); 

而且,有人在评论中指出的,你会想在客户端使用var obj = JSON.parse(data);,虽然你可能会想有条件地添加JSON库版本,它不支持(例如,this one),因为它不是在邻支持浏览器。

+0

好我是新使用JSON,你能告诉我在哪里可以找到一个很好的教程,我试图从W3Schools的学习,但解释过于简单,不包括我的问题 – 2012-07-14 07:08:36

+0

您是否尝试过的http://www.json。 org/js.html?为了您的使用情况下,基本上在PHP中,你将要转换的最终PHP数组或对象成JSON与到'json_encode'功能的单一调用(相当于'JSON.stringify'在客户端)。这会将数组/对象表示为一个可以通过HTTP发送的字符串,并且可以在客户端将其内容稍后解析(使用'JSON.parse',等同于PHP中的'json_decode')回到可用的数组/对象。 – 2012-07-14 07:27:42

+0

是的,这对我的作品感谢 – 2012-07-28 11:44:19