Доброго времени суток. Есть БД с таблицей(stat), в данной таблице три столбца(id,month,kolvo).В столбце "month" перечислены месяца(январь- декабрь),а в "kolvo" числа.Нужно отрисовать диаграмму используя Google Charts.
При использовании данных статичных все работает,а когда берутся данные из таблицы экран пуст.Если открыть консоль в разделе js ошибка " Invalid JSON......".
Содержание файла script.js
// Load the Visualization API and the piechart package.
google.load('visualization', '1.0', {'packages':['corechart']});
// Set a callback to run when the Google Visualization API is loaded.
google.setOnLoadCallback(drawChart);
// Callback that creates and populates a data table,
// instantiates the pie chart, passes in the data and
// draws it.
function drawChart() {
var jsonData = $.ajax({
url: "data.php",
dataType:"json",
async: false
}).responseText;
// Create the data table.
var data = new google.visualization.DataTable(jsonData);
// Set chart options
var options = {'title':'Численность рейсов',
'width':400,
'height':400,};
// Instantiate and draw our chart, passing in some options.
var chart = new google.visualization.PieChart(document.getElementById('chart_div'));
chart.draw(data, options);
}
Содержание файла data.php
define("HOST", "localhost");
define("USER", "root");
define("PASSWORD", "");
define("DB_NAME", "test");
$db_connect = mysql_connect(HOST,USER,PASSWORD,TRUE);
if(!$db_connect){
die('Ошибка подключени'.mysql_error());
}
mysql_select_db(DB_NAME, $db_connect);
echo 'Подключение прошло успешно';
// mysql_set_charset($db,"utf8");
function getDataString() {
global $db_connect;
$query=mysql_query("SELECT month, kolvo FROM stat") or die(mysql_error());
$data= '{"cols":[';
$data.='{"id":"","label":"Месяц","type":"string"},';
$data.='{"id":"","label":"Количество","type":"number"}';
$data.='],"rows":[';
while($row=mysql_fetch_assoc($query)){
$data.='{"c":[{"v":"'.$row['month']. '"},{"v":'.$row['kolvo'].'}]},';
}
$data=rtrim($data,',');
$data.=']}';
return $data;
}
echo getDataString();
Думаю ошибка в цикле,а точнее в выводе из цикла.
Содержание ошибки
Error: Invalid JSON string: Подключение прошло успешно{"cols":[{"id":"","label":"Месяц","type":"string"},{"id":"","label":"Количество","type":"number"}],"rows":[{"c":[{"v":"Январь"},{"v":0}]},{"c":[{"v":"Февраль"},{"v":0}]},{"c":[{"v":"Март"},{"v":0}]},{"c":[{"v":"Апрель"},{"v":2}]},{"c":[{"v":"Май"},{"v":0}]},{"c":[{"v":"Июнь"},{"v":5}]},{"c":[{"v":"Июнь"},{"v":5}]},{"c":[{"v":"Август"},{"v":0}]},{"c":[{"v":"Сентябрь"},{"v":0}]},{"c":[{"v":"Октябрь"},{"v":0}]},{"c":[{"v":"Ноябрь"},{"v":0}]},{"c":[{"v":"Декабрь"},{"v":0}]}]}