2016-08-12 2 views
0

나는 두 개의 PHP 파일 data.php 및 gaschart.php를 가지고 있으며, data.php는 sql에서 데이터를 가져오고 gaschart.php는 높은 차트를 그립니다. 나는 이것을 실시간으로 만들고 싶다. 매 초마다 그래프를 업데이트하는 것을 의미하며, Database는 또한 매 초마다 업데이트하고있다. 누구든지이 코드를 도와주세요. 아무도 내 코드 여기에 할 방법을 보여 주실 수 있습니다 .. ??실시간 업데이트 SQL 데이터베이스의 높은 차트

이이이 gaschart.php

 <script type="text/javascript"> 
    $(function() { 
    var chart; 
    $(document).ready(function() { 
    $.getJSON("data.php", function(json) { 

     chart = new Highcharts.Chart({ 
      chart: { 
       renderTo: 'container', 
       type: 'line', 
       marginRight: 130, 
       marginBottom: 25, 
      }, 
      title: { 
       text: 'Gas Level Detection', 
       x: -20 //center 
      }, 
      subtitle: { 
       text: '', 
       x: -20 
      }, 
      xAxis: { 
       title: { 
        text: 'EventID' 
       }, 

      }, 
      yAxis: { 
       title: { 
        text: 'Level of gas' 
       }, 

      }, 
      tooltip: { 
       formatter: function() { 
         return '<b>'+ this.series.name +'</b><br/>'+ 
         this.x +': '+ this.y; 
       } 
      }, 
      legend: { 
       layout: 'vertical', 
       align: 'right', 
       verticalAlign: 'top', 
       x: -10, 
       y: 100, 
       borderWidth: 0 
      }, 
      series: json 
       }); 
      }); 

     }); 

     }); 
    </script> 
+1

매 초마다 데이터베이스를 업데이트 하시겠습니까 ?? 전통적인 HTTP 요청을 사용하여 차트를 업데이트하고 싶습니까? 나에게 끔찍한 생각이 들린다. –

+0

이것은 프로젝트마다 매초마다 값을 읽고 실제로는 시간 간격이 5 초 정도 될 수있는 데이터베이스에 저장하는 센서이기 때문에 차트도 그에 따라 채워 져야합니다. –

+0

소켓 또는 스트림을 사용하십시오. 당신은 Sensex와 같은 차트를 끊임없이 업데이트하고 싶습니다. 나는 전통적인 HTTP 요청을 사용하지 말 것을 제안한다. –

답변

0

내가 소켓을 사용하려고 할 제안 강하게 것입니다 data.php

<?php 
     $con = mysql_connect("localhost","shsas",""); 

    if (!$con) { 
     die('Could not connect: ' . mysql_error()); 
       } 

    mysql_select_db("shsas", $con); 

    $sth = mysql_query("SELECT Gaslevel FROM gas"); 
    $rows = array(); 
    $rows['name'] = 'Gaslevel'; 
    while($r = mysql_fetch_array($sth)) { 
    $rows['data'][] = $r['Gaslevel']; 
    } 

    $result = array(); 
    array_push($result,$rows); 

    print json_encode($result, JSON_NUMERIC_CHECK); 

    mysql_close($con); 
    ?> 

입니다. socket.io을 확인할 수 있습니다. 그것은 채팅을 위해 개발되었지만. 나는 당신의 유스 케이스를 위해 그것을 사용할 수 있다고 확신한다.

또한 elephant.io을 확인하십시오. 더 일반적인 것입니다. 약간의 실시간 기능을 가져 오는 것을 목표로하는 가볍고 사용하기 쉬운 라이브러리. 당신은 또한 당신의 프로젝트에 이것을 시도 할 수 있습니다. 내부적으로 socket.io를 사용합니다.

+0

고마워요. .. –

+0

을 확인해 보겠습니다. 코드 수행 방법을 알려주십시오. 그것은 나를 위해 작동하지 않습니다. –

관련 문제