0

http://kalanir.blogspot.com/2009/11/how-to-plot-moving-graphsから参照される移動グラフのように、MySQL テーブルに常に値が挿入されているため、リアルタイム グラフを描画しようとしています。 -using-flot.html は実際には二酸化炭素センサーから取得され、位置idの CO2 値でテーブルの値を更新します。私は彼女の Math.Random を以下のコードに変更しました:

<?php $result = mysql_query("SELECT * FROM node1 ORDER BY id DESC LIMIT 1")or die(mysql_error());?>
<?php $row = mysql_fetch_array( $result );?>

var j = "<?php echo $row['co2'];?>";
var next = "<?php echo $row['id'];?>";

for (var i = 0; i < this.xscale - 1; i++) 
{  
  this.array[i] = [i,this.array[i+1][1]];  // (x,y)  
}   
this.array[this.xscale - 1] = [this.xscale - 1,j]; 

ただし、このコードを実行すると、テーブルの最後の行が更新されていても、最初の値が変更され、その後は一定のままです。PHPでは、サーバーが一度しかポーリングされないためだと聞きました。したがって、最初のデータを常に読み取るだけです。グラフをテーブルの最後の値に更新する方法はありますか? アヤックスで?

ご協力いただきありがとうございます

4

2 に答える 2

2

はい、定期的な更新 (ポーリング) または HTTP ストリーミングを使用できます。

これらのオプションは両方とも、かなりの帯域幅を要求する可能性があることに注意してください。

于 2010-07-28T05:06:42.210 に答える
0

ある種のポーリングを行う必要があります。しかし、それを行う前であっても、1. データベースからすべての重要なデータを取得する php ファイルを作成します。2.そのファイルにフォーマットされた方法でそのデータをエコー/返させます。3. js 関数にそのファイルを一定間隔でポーリングさせる ( setInterval() で実行される関数)

はい..帯域幅の問題がいくつかありますが、管理できると思います。

于 2010-08-28T00:34:49.833 に答える