-4

Possible Duplicate:
How to generate .json file with PHP?

I want to use php to create a json like below. it will return a string json as a response from result sql query. How do I do?

{"Orders":[  
            {"DeliveryId":"DeliveryId","CustomerName":"CustomerName","PhoneNumber":"PhoneNumber","Address":"Address"},  
            {"DeliveryId":"DeliveryId","CustomerName":"CustomerName","PhoneNumber":"PhoneNumber","Address":"Address"}               
]
}

my code

<?php
mysql_connect("mysql12.000webhost.com","a4602996_longvan","longvan2012");
mysql_select_db("a4602996_lv"); 
$id=$_POST[user];
$sql=mysql_query("select * from testlongvan where Status = 'PACKED'" ); 

$json = array();
if(mysql_num_rows($sql)){
while($row=mysql_fetch_row($sql)){
$json['Orders'][]=$row;
}
}

//while($row=mysql_fetch_assoc($sql))
//$output[]=$row;
print(json_encode($json)); 
mysql_close(); 
?>

But when use my code i recieve result, don't result i want:

{"Orders":[ ["longvan","10/12/2012","Be34433jh","Long Van","115 Pham Viet Chanh, quan Binh Thanh","http://longvansolution.tk/image/sample.jpg","PACKED","0909056788"], ["takeshi","24/12/2012","BF6464633","Vn-zoom","16 nguyen cuu van, quan binh thanh","http://longvansolution.tk/image/hoadon3.jpg","PACKED","098897657"] ]} Can you help me!

4

2 回答 2

1

您可以使用json_encode()函数来做到这一点。

而且您的 JSON 格式无效。使用:代替=

于 2012-12-19T03:00:44.797 回答
0
// SERVER SIDE
<?php
    //... create array
    //....Obviously you would use your own SQL link and query
    $animals = array();
    $result = @mysqli_query('YOUR DB LINK', 'YOUR QUERY');

    while ($row = mysqli_fetch_array($result, MYSQLI_BOTH)) {
        array_push($animals, array(
            'animal' => $row['animal'],
            'sound'  => $row['sound']
    ));
    }
?>

// CLIENT SIDE
<html>
<script>
    // RETURN FROM PHP PAGE ECHO VIA AJAX PERHAPS //
    var animals = <?php echo json_encode($animals) ?>;

    $.each(animals, function (i, elem) {
        console.log(elem.animal + " makes a " + elem.sound);
    });
</script>
</html>
于 2012-12-19T02:59:59.397 回答