0

JSONを生成するために使用するPHPファイルは次のとおりです。

<?

$databasehost = "wbw.com";
$databasename = "wtest";
$databaseusername ="w";
$databasepassword = "123";
$query = "SELECT * FROM  `and` LIMIT 0 , 30";

$con = mysql_connect($databasehost,$databaseusername,$databasepassword) or die(mysql_error());
mysql_select_db($databasename) or die(mysql_error());
$sth = mysql_query($query);

if (mysql_errno()) { 
    header("HTTP/1.1 500 Internal Server Error");
    echo $query.'\n';
    echo mysql_error(); 
}
else
{
    $rows = array();
    while($r = mysql_fetch_assoc($sth)) {
        $rows[] = $r;
    }
    print json_encode($rows);
}
?>

問題は、次のような結果が生成されることです。

[{"Reg_user_name":"nn","ユーザー名":"ns","デバイス コード":"2366c84dead","HTTP":"https://api.ee.com/v1//306ad73427e262r9","デバイス名前":"office"},{"Reg_user_name":"nn","ユーザー名":"nn","デバイス コード":"2366c84dead","HTTP":"https://api.ee.com/v1 /e/306ad73427e262e7","デバイス名":"LAB照明"}]

しかし、JSONobject を使用してその中の要素を取得するには、次のように JSON を指定する必要があります。

[ "情報": {"Reg_user_name":"nn","ユーザー名":"ns","デバイス コード":"2366c84dead","HTTP":"https://api.ee.com/v1//306ad73427e262r9 ","デバイス名":"office"},{"Reg_user_name":"nn","ユーザー名":"nn","デバイス コード":"2366c84dead","HTTP":"https://api.ee .com/v1/e/306ad73427e262e7","デバイス名":"ラボ照明"}]

上記のPHPファイルを使用して自動的に「 information:」タグが追加されたデータを取得するには、PHPファイルに何を追加する必要があるかを知りたいです。

4

2 に答える 2

2

インデックスが 1 つだけ必要な場合は、これを変更できます

 $rows = array();
    while($r = mysql_fetch_assoc($sth)) {
        $rows[] = $r;
    }
    print json_encode($rows);

これに

 $rows = array();
    while($r = mysql_fetch_assoc($sth)) {
        $rows[] = $r;
    }
 $json = array(
     'information' => $rows,
 );
    print json_encode($json);

文字列インデックスを配列に追加するだけで、jsonエンコーダーが自動的に変換します

于 2013-05-07T11:22:12.853 に答える
2

これをチェックして

while($r = mysql_fetch_assoc($sth)) 
{
  $rows['information'][] = $r;
}
echo json_encode($rows);
于 2013-05-07T11:22:31.060 に答える