如何使用php循环将mysql数据导入谷歌图表?

时间:2012-06-27 04:09:17

标签: php mysql google-visualization

我创建了一个Google图表,并且我添加了从数据库本身获取的数据。通过php循环获取数据时,我遇到了一些困难,因为我的语法不能将数据修改为图表。

这就是我已经走了。我需要取代mysql值代替:

1170,460,45,123,456],                                             660,1120,145,785,658]

    var data = google.visualization.arrayToDataTable([
      ['Term', <?php

      while ($getchartrows =  mysql_fetch_array($getchart))
      {
          echo  " ' " . $getchartrows['std_ID'] . " ' " . ",";
      }

      ?>],

      <?php


      $one = mysql_query("SELECT * FROM stusitting WHERE std_ID = '0001' AND subjectNo = '$subin' AND grade = '$gradein' AND termNo = '$tcheck' ");
      $getone = mysql_fetch_array($one);

      ?>

          ['01',  <?php echo $getone ['marks']; ?>,      400, 495, 565, 415],
      ['02',  1170,      460, 45, 123, 456],
      ['03',  660,       1120, 145, 785, 658]
    ]);




    var options = {
      title: 'Class Progress'
    };

1 个答案:

答案 0 :(得分:5)

尝试解决另一个问题。首先,从数据库中获取所需的数据。然后,在PHP中创建所需的数据结构,并使用json_encode()将其转换为JavaScript。最后,将其传递给JavaScript中的可视化功能:

<?php
// query data
$result = mysql_query(...);

// format data structure
$data = array();
$i = 0;
while($row = mysql_fetch_array($result)) {
    $i += 1;
    array_push($data, array($i) + $row);
}

// convert to JavaScript
?>
var raw_data = <?php echo json_encode($data) ?>;

// visualize
var data = google.visualization.arrayToDataTable(raw_data);