1

PHP を使用してデータベースからデータを取得し、それを jQuery に渡して、動的な Google チャートで使用できるようにしようとしています。json_encode() を使用して PHP 配列を JSON に変換しましたが、jQuery を使用してこのデータにアクセスし、Google チャートに渡す必要があります。

私のPHPコード:

$db = new Db(DB_NAME, DB_HOST, DB_USER, DB_PASSWORD);

$dates = array();
for($number=14; $number>=1; $number--) {
    $dateValue = date('j M', strtotime("-$number day"));
    $getCount[$number] = $db->get($this->styleName, $dateValue);
    $items[$dateValue[$number]] = $getCount[$number];
}
$json_encode = json_encode($dates);
var_dump($json_encode);

私の出力されたJSON:

{
"15 Apr": "19",
"16 Apr": "15",
"17 Apr": "18",
"18 Apr": "13",
"19 Apr": "27",
"20 Apr": "2",
"21 Apr": "12",
"22 Apr": "9",
"23 Apr": "11",
"24 Apr": "20",
"25 Apr": "25",
"26 Apr": "137",
"27 Apr": "99",
"28 Apr": "115"
}

主な質問は、このデータを jQuery スクリプトに渡す方法です。私がこれを正しい方法で行っているかどうか、または正しい軌道に乗るのを手伝ってくれるかどうか、誰かが私に言うことができますか?

前もって感謝します :)

4

3 に答える 3

6

PHP ファイルの先頭で json ヘッダーを送信します。

<?php
header('Content-Type: application/json');
// build $datas
echo json_encode($datas);
?>

そして、jquerys getJSON 関数を使用して json をプルします。

$.getJSON('path/to/php/file.php', function(jsondata) {
    // use jsondata here
});
于 2013-04-29T12:40:46.053 に答える
0

別のリクエストでそれを行うことができるので、リクエストはjsonのみを出力し、 $.getJson(); でフェッチします。これはクリーンな方法ですが、追加のリクエストが必要です。

または、htmlのタグに含めることができます

出力テンプレート:

<html>
  ...
  ...
  <script type="text/javascript">
    $.yourOwnJqueryExtention.setJSON(<?=$myJSON?>); 
  </script>
</body>
</html>
于 2013-04-29T12:44:01.460 に答える