0
我有一個問題我已經tryied作出JSON響應看起來像:Mysql的數組JSON皈依
{
"0":{
"cid":"2",
"user_name":"4",
"user_title":null,
"user_description":null,
"user_tags":null,
"user_imgid_logo":"05d419b4cc5c6d1d2fabf90a8dbd967a",
"user_online":"2",
"rank":"0",
"multibitrate":"0",
"user_name":"gqgeee",
"user_logo_url":"http:\/\/static.example.tv\/logos\/05d419b4cc5c6d1d2fabf90a8dbd967a.jpg",
"user_image":"1"
},
"1":{
"cid":"1434",
"user_name":"dokumenty",
"user_title":"*Filmy dokumentalne* (^HQ^-^HD^)",
"user_description":"short deskt",
"user_tags":"asfasf",
"user_imgid_logo":"51bbe341fe3e92f37a89609b80274be8",
"user_online":"2",
"rank":"1",
"multibitrate":"1",
"user_name":"asdd",
"user_logo_url":"http:\/\/static.example.tv\/logos\/51bbe341fe3e92f37a89609b80274be8.jpg",
"user_image":"1"
}}
我已成功地連接到MySQL,並從數據庫中創建JSON,但我的JSON does not看起來作爲上面的一個:
[
{
"1":{
"cid":"1",
"user_name":"sgsd",
"user_title":"sgsd asgx",
"user_description":"asgx na czasie",
"user_tags":"asgx",
"user_imgid_logo":"sgsd",
"user_online":"2",
"rank":"3",
"multibitrate":"1",
"user_name":"Kowalski",
"user_logo_url":"http:\/\/upload.wikimedia.org\/wikipedia\/commons\/8\/84\/asd.png",
"user_image":"1"
}
},
{
"2":{
"cid":"2",
"user_name":"sgsd 2",
"user_title":"sgsd asgx 2",
"user_description":"asgx na czasie 2",
"user_tags":"asgx",
"user_imgid_logo":"sgsd",
"user_online":"2",
"rank":"3",
"multibitrate":"1",
"user_name":"Kowalski",
"user_logo_url":"http:\/\/upload.wikimedia.org\/wikipedia\/commons\/8\/84\/sgsd.tv_logo_2014.png",
"user_image":"1"
}
}
]
^括號是不需要的,json仍然搞砸了一下。
這是php我的烴源代碼:
<?php
$getoption = $_GET["option"];
if ($getoption === 'psd') {
//$dataList = substr($dataList, 1, -1);
//open connection to mysql db
$connection = mysqli_connect("localhost","datbase","duser","upass") or die("Error " . mysqli_error($connection));
//fetch table rows from mysql db
$sql = "select * from public";
$result = mysqli_query($connection, $sql) or die("Error in Selecting " . mysqli_error($connection));
$num_rows = mysql_num_rows($result);
//create an array
// $emparray[] = array();
//$emparray[] = array('1'=>$row);
echo '<pre>';
var_dump(mysqli_fetch_assoc($result));
echo '</pre>';
$start = 1;
while($row = mysqli_fetch_assoc($result))
{
$emparray[] = array($start=>array($row));
$start++;
}
//$dataList = substr(json_encode($emparray), 1, -1);
$dataList = json_encode($emparray);
echo $dataList;
//close the db connection
mysqli_close($connection);
}
if ($getoption === 'sk') {
echo 'ks os';
}
?>
是否有任何身體願意幫忙嗎?謝謝。
如果您看到[]圍繞{},則表示正確。您的前端JS ajax調用將能夠正確讀取它。 =) 在前端,請確保它將json響應視爲數組而不是對象。 – Mox
嘗試'json_encode($ amparray,JSON_FORCE_OBJECT)' –
驗證任何json,你可以在這裏查看http://jsonlint.org –