仕事でタイトルの組み合わせのものを作っている。 JpGraphとはグラフが簡単に作成できるライブラリ。 AJAXはJavaScriptとxmlの非同期通信(?)みたいな技術。
どうやって、グラフを動的に作成するか悩んだ。 その結果APIみたいに作る事にした。
<src=”JpGraph/createGraph.php?data[]=100,200,300&data[]=300,400,500″>
みたいに、返り値を画像になるように指定する。
createGraph.php内で、URLの引数についている値を処理し、データとしてグラフに送る。
これで表示部分は完成。 あとはどうやってAJAXで再現するか考えた。
やっぱりonclickか。 ネットで調べたら、ページにアクセスして画面に表示された結果を返すライブラリがあったのでそれを使う事に。 動的にアクセスするPHPのURLをJavaScriptで作り、PHPで先ほどと同じように引数を処理し、DBに繋ぎグラフ用のURLをechoで吐き出す。 これで完成。
けっこういいものが作れたと自己満足。
これ、やりたかったんですが、全然やり方が分からなかったんです。
よろしかったら、ソース開示していただけないでしょうか?
大量にあるので、ソースの開示はできないのですが……
グラフ作成部分のラジオボタンやチェックボックスと連動して、JavaScriptのXMLHttpRequest(参考:http://ponpon-village.net/ajax/xmlhttp.htm)にクエリーを送ります。
XMLHttpRequestで、値を処理するPHPにアクセスします。
その中で、DB処理などをして、グラフに表示したいデータを返します。
その返ってきた値を
<img src=”JpGraph/createGraph.php?data[]=100,200,300&data[]=300,400,500″ />
のよう、動的にグラフを作成するために、JpGraphのライブラリを使用したPHPにアクセスします。
あとは、グラフの種類に応じて受け取ったデータを処理するだけです。
簡単ですね。すごいです。ありがとうございました!!