在php和我的sql中使用谷歌可视化创建图表


Chart creation in php and my sql using google visualization

嗨,我正在尝试使用以下查询创建图表。

    $sql_no=mysql_query("SELECT MONTH(calldate) AS month,COUNT(*) AS nosuccess FROM     details WHERE result =1 GROUP BY MONTH(cdate)");
   $call=mysql_fetch_assoc($sql_no);?>
    <?php
   While($call=mysql_fetch_assoc($sql_no)){
      $success[]=$call['nosuccess'];
      $monname[]=date( 'F', mktime(0, 0, 0,$call['month']) );   
      }

这是我的图表代码:

    var total = <?php echo json_encode($total) ?>;
var s=<?php echo json_encode($success) ?>;
var m=<?php echo json_encode($monname) ?>;
var d=3;
     var result=[];
     for(var i=0; i<s.length; i++) {
      result.push([m[i],s[i]]);
     }     
    alert(result.length);
  google.load("visualization", "1", {packages:["corechart"]});
  google.setOnLoadCallback(drawChart);
  function drawChart() {
    var data = new google.visualization.DataTable();
    data.addColumn('date', 'Month');
    data.addColumn('number', 'Success');
   // data.addColumn('number', 'Failure');
  /*data.addRows([
      ['2004', 1000, 400],
      ['2005', 1170, 460],
      ['2006',  860, 580],
      ['2007', 1030, 540]
    ]);*/
 data.addRows(result);
    var options = {
      width: 800, height: 340,
      title: 'Call details'
    };
    var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
    chart.draw(data, options);
  }

图表未显示。当我隐藏数据时。addrows(结果);图表显示时没有线条。。你发现任何错误了吗?急需帮助。。。

在PHP中,是否存在<div id="chart_div"></div>

此外,json_encode不会为您创建阵列。

var s=<?php echo json_encode($success) ?>; !== var s = [xxx];

您需要var s = [<?=$success?>];