2

JSONデータを渡してJQPlotにフィードすることに関する他のトピックを見てきましたが、必要なものが見つからないようです。問題は、JSONデータを正しくフォーマットできないことです。(はい、JSONをフォーマットして使用するのはこれが初めてです)私はあらゆる種類の組み合わせを試しましたが、それでも正しい組み合わせを探しています。

JQPlotは、データを次のように表示したいと考えています。

[[x,y],[x,y],[x,y],[x,y]]

しかし、私が出力できた最高のものは

[x,y][x,y][x,y][x,y]

誰かが私が欠けているものを教えてくれるかもしれないことを願っています。私のコードは以下です...

$sql = "SELECT client_id, SUM(gross) FROM s_pr_wcomp GROUP BY client_id ORDER By SUM(gross) DESC LIMIT 10";
$result = mysqli_query($mysql,$sql) or die(mysqli_error('Top 10 Query Failed!'));

// Encode Top 10

while($row = mysqli_fetch_array($result)){ 
$grossTop = array(
    $grossTop[] = $row['client_id'],
    $grossTop[] = '$'.number_format($row['SUM(gross)'], 2)
);

header('ContentType: application/json; charset=utf-8');
echo json_encode($grossTop);
}

ありがとうございました!

4

2 に答える 2

4

配列を配列に追加する必要があります$grossTop。whileループの中には、次のようなものがあります。

while($row = mysqli_fetch_array($result)){ 
    $grossTop[] = array(
        $row['client_id'],
        '$'.number_format($row['SUM(gross)'], 2)
    );
}
header('ContentType: application/json; charset=utf-8');
echo json_encode($grossTop);
于 2012-11-08T15:08:54.573 に答える
0

一目でわかるように、$grossTop の各反復が別の配列にラップされています。

while($row = mysqli_fetch_array($result)){ 
$grossTop = array(array(
    $grossTop[] = $row['client_id'],
    $grossTop[] = '$'.number_format($row['SUM(gross)'], 2))
);
于 2012-11-08T15:05:23.850 に答える