php - Highcharts 为空白

标签 php mysql highcharts

我正在尝试从 mySQL 数据创建一个 Highcharts 。问题是它不返回任何内容。

到目前为止,我已在头文件中添加了所需的库。

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"type="text/javascript"></script> 
<script src="http://code.highcharts.com/highcharts.js"></script>
<script src="http://code.highcharts.com/modules/exporting.js">

然后我在要显示图表的文件中添加了以下代码。

global $post;
    foreach ($balanceQuery as $row) 
    { 

        $value = $row->balance;
        $datetime = $row->post_date * 1000; // convert from Unix timestamp to JavaScript time
        $data[] = "[$datetime, $value]";
    }

?>

<script type="text/javascript">

var chart = new Highcharts.Chart({
      chart: {
         renderTo: 'container'
      },
      series: [{
         data: [<?php echo join($data, ',') ?>]
      }]
});
</script>

最后我添加了这个html代码:

<div id="container" style="height: 400px; border-bottom: 1px solid #d9d9d9;"></div>

为什么没有显示任何内容?

另一个测试:

我现在尝试了以下操作,它实际上打印出了图表中的值,但我似乎无法将日期放入?

测试:

<script type="text/javascript">
var chartdiv = document.createElement("div");
chartdiv.className = "huge-container";

var seriesOptions = {
        data: [<?php echo join($data, ',') ?>]
 }

var chartOptions = {
     chart: {
         renderTo: 'huge-container',
     },
     series: seriesOptions,
}


var chart = new Highcharts.Chart(chartOptions);

</script>

最佳答案

这个

$data[] = "[$datetime, $value]";

应该是这个

$data = [$datetime, $value];

还有这个

join($data, ',')

应该是

implode(',', $data)

为了与当前 php 规范保持一致

我不熟悉您正在使用的图表插件,但这假设您的 $balanceQuery 变量已定义并具有查询结果。

关于php - Highcharts 为空白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28568495/

相关文章:

php - 3 个问题 : include header/footer file, varchar as pk,切换语言

php - 在 PHP 中添加时间

php - 如何查找并显示同一表中两个不同列中相似单词的数量(MySql,PHP)

php - 根据尺寸更改价格并显示尺寸

mysql - 从 3 个表中选择具有连接的数据

javascript - Highcharts 日期

java - 如何在 QueryDSL 中为时间差创建 OrderSpecifier?

mysql - 按列排序是否需要成为索引的一部分

javascript - highcharts pie-basic 百分比的错误

php - 编码为 JavaScript 对象,函数被替换