Я использую диаграмму Морриса Дону и не могу передать свои данные массива json в jquery. Вот мой файл php:
$stmt=$dbh->prepare("Select COUNT(Incasari.id_produs) as cnt,Incasari.id_produs,denumire_produs from Incasari
INNER JOIN Produse on Produse.id_produs=Incasari.id_produs Group By Incasari.id_produs order by cnt desc limit 3 ");
$stmt->execute();
while ($row=$stmt->fetch())
{
$arr[]= array(
'id' => ''.$row['id_produs'].'',
'denumire' => ''.$row['denumire_produs'].'',
'cnt' => ''.$row['cnt'].''
);
}
echo json_encode($arr);
Возвращенный результат:
[{"id":"3","denumire":"bere","cnt":"5"},
{"id":"1","denumire":"Suc","cnt":"3"},
{"id":"2","denumire":"pepsi","cnt":"2"}]
И часть JavaScript:
$(document).ready(function(){
$.ajax({
url: 'app/chart_produse.php', // getchart values
dataType: 'JSON',
type: 'POST',
data: {get_values: true},
success: function(response) {
var donut = new Morris.Donut({
element: 'sales-chart',
resize: true,
colors: ["#3c8dbc", "#f56954", "#00a65a"],
data: response,
hideHover: 'auto'
});
}
});
});
Ваш формат передачи данных неверен.http://morrisjs.github.io/morris.js/donuts.html
Согласно документации Мориса пончик
Данные для построения. Это массив объектов, содержащий
label
а также
value
атрибуты, соответствующие меткам и размерам сегментов
кольцевой диаграммы.
Других решений пока нет …