My Zingchart is not showing what is wrong?

This is the code below
First, I get data from the database:

<?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"]; } ?> 

Then I move on to creating data for the chart:

 <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> 

I tried many ways to enter data, however the chart still does not load. What causes this and how to fix it?

+6
source share
1 answer

The problem is how you create the dataBar array. Iterating over the values ​​is fine, but this is what you actually output:

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

which is not a well-formed array. Try instead:

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

Then specify it in your JSON like this:

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

I am on the ZingChart team. Holler if you have more questions ZC.

+5
source

All Articles