为什么我的图表canvasjs不适用于我的mysql数据库

时间:2016-04-15 20:05:24

标签: php jquery mysql json canvasjs

我有一个小项目。我想使用MySQL数据库生成带有CanvasJS框架的图表。

数据库名为sti2d,表名为sin_project 它包含这个:

mysql> SELECT * FROM sin_project;
+------+-------------------+-------------+
| id   | wall              | temperature |
+------+-------------------+-------------+
|    2 | Brique Pleine     | 19.82       |
|    3 | Brique Creuse     | 0.00        |
|    4 | Béton Cellulaire  | 0.00        |
|    5 | Intérieur Maison  | 0.00        |
|    1 | Parpaing          | 0.00        |
+------+-------------------+-------------+
5 rows in set (0.00 sec)

我使用名为data.php的文件来执行2个操作。读取表sql并返回表数据的JSON信息。 文件data.php在这里:

<?php

header('Content-Type: application/json');

$con = mysqli_connect("localhost","root","mypasswd","sti2d");

// Check connection
if (mysqli_connect_errno($con))
{
    echo "Failed to connect to DataBase: " . mysqli_connect_error();
}else
{
    $data_points = array();

    $result = mysqli_query($con, "SELECT * FROM sin_project");

    while($row = mysqli_fetch_array($result))
    {        
        $point = array("label" => $row['wall'] , "y" => $row['temperature']);

        array_push($data_points, $point);        
    }

    echo json_encode($data_points, JSON_NUMERIC_CHECK);
}
mysqli_close($con);

?>

然后,我使用此页面绘制图表

<!DOCTYPE HTML>
<html>
<head>
<script src="other/js/canvasjs.js"></script>
<script type="text/javascript">
$(document).ready(function () {

            $.getJSON("http://localhost/data.php", function (result) {

                var chart = new CanvasJS.Chart("chartContainer", {
                    data: [
                        {
                                type:"column",
                dataPoints: result
                        }
                    ]
                });

                chart.render();
            });
        });
</script>
</head>
<body>
<div id="chartContainer" style="height: 300px; width: 100%;"></div>
</body>
</html>

但是,我没有图表,也没有看到我的错误。

1 个答案:

答案 0 :(得分:0)

在网络浏览器中转到“http://localhost/data.php”。看看是否有任何显示。

如果没有,请尝试添加

  

使用error_reporting(E_ALL);

到data.php文件的顶部。