7

これは以下のコードです。
まず、データベースからデータを取得します。

<?php
//getDBConnect function
require 'dbfunction.php';

//Get ID from form 
$id = $_GET['staffid'];

//connect to database
$con = getDBConnect();

if(!mysqli_connect_errno($con)){
    $sqlQueryStr = 
            "SELECT a.ai_Name, r.duration " .
            "FROM report AS r, academicinstitution AS a " .
            "WHERE r.staff_Id = '$id' " . 
            "AND r.ai_Id = a.ai_Id ";

    $result = mysqli_query($con,$sqlQueryStr);

    mysqli_close($con);
    } else {
        echo "Failed to connect to MySQL: " . mysqli_connect_error();
    }

    //Get data into array
    $emparray = array();
    while ($row = mysqli_fetch_assoc($result)) {
        $emparray[] = $row;
    }

    //Group array by ai_Name
    $grouparray = array();
        foreach($emparray as $item)
        {
          if(!isset($grouparray[$item["ai_Name"]]))
            $grouparray[$item["ai_Name"]] = 0;

          $grouparray[$item["ai_Name"]] += $item["duration"];
        }
?>

次に、チャートのデータの作成に進みます。

<script>
    var dataBar=
        <?php 
            foreach($grouparray as $keys => $value){
                echo $value.',';
            }
        ?>;

    window.onload=function(){
        zingchart.render({
            id:'chartBar',
            height:400,
            width:600,
            data:{
                "graphset":[
                {
                    "type":"bar",
                    "title":{"text":"BarChart"},
                    "series":[
                        {
                            "values":[dataBar]
                        }
                    ]
                }
                ]
            }
        });
    };
</script>

<div id="chartBar"></div>

データを入力するために多くの方法を試しましたが、グラフはまだ読み込まれません。何が原因で、どうすれば修正できますか?

4

1 に答える 1

5

dataBar問題は、配列を作成する方法です。値の繰り返しは問題ありませんが、実際に出力しているのは次のとおりです。

var dataBar=1,2,3,4,5,;

これは整形式の配列ではありません。代わりにこれを試してください:

var dataBar=[
    <?php 
        foreach($grouparray as $keys => $value){
            echo $value.',';
        }
    ?>];

次に、JSON で次のように参照します。

"series":[
  {
    "values":dataBar
  }
]

私は ZingChart チームに所属しています。さらに ZC に関する質問がある場合は、大声でお問い合わせください。

于 2015-07-27T16:08:53.913 に答える