2015-11-15 121 views
0

我有项目温度mesuare使用mySQL存储数据的beaglebone。 我能够显示谷歌图表形式MySQL使用PHP,但我不能实时更新它,任何人都可以帮助我,非常感谢。实时更新谷歌图表,php,mySQL

<html> 
<head> 
    <title>BeagleBone Temperature</title> 
    <script type="text/javascript" src="https://www.google.com/jsapi"></script> 
    <script type="text/javascript"> 
     google.load("visualization", "1", {packages:["corechart"]}); 
     google.setOnLoadCallback(drawChart); 
     function drawChart() { 
     var data = google.visualization.arrayToDataTable([ 
      ['Time', 'Temperature'], 
      <?php 
       $con = mysqli_connect("localhost", "hoangviet", "hoangviet", "test"); 

       $query = "SELECT * FROM TempMeas"; // form table 
       $result = mysqli_query($con, $query); 

       mysqli_close($con); 

       while ($row = mysqli_fetch_array($result)) 
       { 
        $time = $row['MeasTime']; 
        $temp = $row['Temp']; 
        echo "['$time', $temp],"; 
       } 
      ?> 
     ]); 

     var options = { 
      title: 'BeagleBone Measured Temperature', 
      vAxis: { title: "Degrees Celsius" } 
     }; 

     var chart = new google.visualization.LineChart(document.getElementById('chart_div')); 
     chart.draw(data, options); 
     } 
    </script> 
</head> 
<body> 
    <div id="chart_div" style="width: 900px; height: 500px;"></div> 
</body> 
</html> 
+0

实时更新意味着您希望不更新就更新它? – sandeepsure

+0

没错,你能帮助我吗? –

+0

你需要每30秒调用一次ajax,它将是同步的方式。 – sandeepsure

回答

0

嗯。我想逆向阿贾克斯将适合你的需要。其中一种类型是轮询,其中你不需要每隔30秒或通过ajax调用某个函数。它会在事件之后立即更新或触发功能。现在有许多选择实时应用程序的选项,其中一个可能是node.js,也可以是角度js,如果要实现实时Web应用程序,还可以阅读套接字编程。希望有所帮助。