javascript - Mysql 的 Highchart 不工作

标签 javascript php mysql highcharts

我想在 highchart 饼图 3D 中显示最常用的类别,但它不起作用,json 编码数组只接收一行数据。这是我的 php 代码:

$script1 = "SELECT categoria, COUNT(categoria) from entidade GROUP BY categoria ORDER BY COUNT(categoria) DESC";
$result9 = mysql_query($script1);
$data = array();

while ($row = mysql_fetch_array($result9)) 
{
    $data[] = json_encode(array(array($row['categoria'], $row['COUNT(categoria)'])));
}  

这是我的 JavaScript:

$(function () { 
    Highcharts.chart('container2', {
    chart: {
        type: 'pie',
        options3d: {
            enabled: true,
            alpha: 45
        }
    },
    title: {
        text: 'Categoria de Crimes Mais Cometidos'
    },
    subtitle: {
        text: ''
    },
    plotOptions: {
        pie: {
            innerSize: 100,
            depth: 45
        }
    },
    series: [{
        name: 'Quantidade:',
        data:JSON.parse(<?php echo(json_encode($data));?>)
    }]

请帮帮我!

最佳答案

如果您想拥有之前注释掉的所需数组格式,我认为您需要像这样分配数组:

$data = array();
$iIndexCounter = 0;
while ($row = mysql_fetch_array($result9)) {
    $data[$iIndexCounter][] = $row['categoria'];
    $data[$iIndexCounter][] = $row['COUNT(categoria)']
    iIndexCounter++;
    // e.g : $data[0][0] = Crab Vermecilli; || $data[0][1] = 0;
}

echo json_encode($aData); //[["Crab Vermecilli",0], ["Salted Egg Yolk Crab",0]]

其中 $iIndexCounter 将是保存这两个值的数组索引(例如 categoria 和 COUNT(categoria))

希望这对您的情况有所帮助。

关于javascript - Mysql 的 Highchart 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42928205/

相关文章:

php - 集成 PHP Curl

php - mysql_query如何显示if条件的html

php - 在 CodeIgniter 中使用 foreach 更新表

php - MySQL从文本区域插入到多行

javascript - 动态设置选择元素宽度等于其选项的内容宽度

javascript - 已删除的文件仍在被访问

javascript - 如何在相邻的 iframe 内调用 javascript 函数

php - 将酒店菜单存储在数据库中

mysql - 在 foreach Node.js Promise 中查询

javascript - 切换显示仅适用于第二次点击