javascript - Morris 图表和 PHP 问题

标签 javascript php mysql json morris.js

我现在在莫里斯图表上挣扎了一段时间。我尝试使用 PHP 代码从 Mysql 表调用数据,但不断收到此错误。

Uncaught TypeError: Cannot read property 'length' of undefined

但是当我检查站点时,我看到我得到了 json,所以我相信编码是成功的

    Morris.Bar({
    element: 'brojLampi',
    data: [{"label":"Mali Tabor","value":"5"},{"label":"Prišlin","value":"24"}]*//output*,
    xkey: 'naziv_naselja',
    ykey: 'broj',
    labels:['naziv_naselja'],
    });

这是 PHP 代码:

<div id="morris-area-chart"></div>
<?php
try {
    $db  = connectPDO();
    $row = $db->prepare("SELECT naziv_naselja, count(naziv_naselja) AS broj FROM v_rasvjeta GROUP BY naziv_naselja");
    $row->execute();

    $json_data = array(); 
    foreach ($row as $rec) { 
        $json_array['label'] = $rec['naziv_naselja'];
        $json_array['value'] = $rec['broj'];
        array_push($json_data, $json_array);

    }
?>
    <div id="brojLampi"></div>
    <script type="application/javascript">
    Morris.Bar({
    element: 'brojLampi',
    data: <?php
    echo json_encode($json_data, JSON_UNESCAPED_UNICODE);
?>,
    xkey: 'label',
    ykey: 'value',
    labels:['Name']
    });

    </script>
    <?php
    closePDO($db);
} 
catch (PDOException $e) {
    showPDOErrors($e, $db);
}
?>

甚至,我尝试过类似的方法,但没有成功

$.getJSON("brojLampi", function (data) {    
Morris.Bar({
element: 'brojLampi',
data: <?php echo json_encode($json_data,JSON_UNESCAPED_UNICODE)?>,
xkey: 'naziv_naselja',
ykey: 'broj',
labels:['naziv_naselja'],
});
});

使用上面的代码时出现此错误:

GET http://localhost:8081/APLIKACIJE/RASVJETA/stranice/brojLampi 404 (Not Found)

任何帮助将不胜感激:)

最佳答案

使用上面问题中的代码,我找到了问题的解决方案(非常有趣)

    <div id="brojLampi"></div>
    <script type="application/javascript">
    Morris.Bar({
    element: 'brojLampi',
    data: <?php
    echo json_encode($json_data, JSON_UNESCAPED_UNICODE);
?>,
    xkey: 'label',
    ykey: 'value',
    labels:['Name']
    });

这是这一行的问题,而不是这个:

 ykey: 'value'

我刚刚添加了括号,它就起作用了

ykey: ['value']

有趣,我知道:)希望有帮助

关于javascript - Morris 图表和 PHP 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36884519/

相关文章:

php - mysql数据库中的动态表名?

php - LEFT JOIN 在 mySQL 中花费了很长时间

mysql pivot 检索字符串

javascript - 检查一个字符串是否包含另一个字符串 React Native

php - 如何处理向服务器请求很多动态图片?

php - MySQL & php PDO 如何获取 : SELECT EXISTS (SELECT 1 FROM x WHERE y = :value)

php - Codeigniter 查询生成多行

php - PHP 中的表单验证问题

将 Gulp Uglify 与 js 数组一起使用时出现 Javascript 错误

javascript - 如何检查用户并通过然后重定向