勉強したことのメモ

webプログラマ見習いが勉強したことのメモ。

PHPとSQLiteでi-mobileのデータをグラフ化

      2015/02/26

i-mobileでクリック保証のアフィリエイトだけど数値が並んでいるだけでグラフでは確認できない。なのでSQLiteの練習もかねて、グラフ化を行った際のメモ。

機能は以下の通り。

 

  • 詳細レポートの日別データCSVをアップロードできるフォーム
  • アップロードしたデータをSQLiteに保存
  • 既に登録されている日付分は上書き保存せず、差分だけ保存する
  • データリセット機能
  • highcharts.jsを使ってグラフ表示

 


 

 

■下準備

以下からhighcharts.jsを用意してアップロードしとく。

http://www.highcharts.com/

 


 

 

■ソース

 


 

 

■その他

ソースをそのまま保存して、highchats.jsのパスを書き換えてアップロードするだけで動くはず。

気付いた点としてSQLiteのバージョンが3.7.11以前のものだと、MySQLでよく使う以下の形のバルクインサートができない模様。

 

 

以下のような形ならバルクインサート可能みたいだけど、1回に挿入できるのは500件まで。

 

 

500件以上なら分ける処理とか入れるのが面倒くさかったので1回ずつ挿入にした。

また、データのリセット時にTRUNCATEを使おうとしたけどSQLiteには無いらしい。DELETE FROM tableで対応。

BBSと違って複数人数が使うものでもないし、日別データならデータ数も少ないし、こういうページにSQLiteが向いていそう。

 - jQuery, PHP, SQLite

  関連記事

javascript_logo_unofficial-300x300
javascriptとPHPで正規表現を使う場合

とりあえず使いそうなのは検索と置換。 ■javascript var str = ...

jquery_logo
テキストエリアを自動でリサイズ

改行するだけで勝手にリサイズしてくれるので、 ユーザー用でも管理用でも使えそう。 ...

images
PHPでのcookie

aaa.comにログインフォームがあって、IDパスを入れて ログインするとbbb ...

url
DTIのVPSにCodeigniterを導入する方法

DTIのVPSにPHPフレームワークのCodeigniterをインストールした。 ...

msyql-image
phpMyAdminより高速で軽量なAdminerが凄い

MySQLをGUIで管理できるphpMyAdmin。特に不満はないんだけど、もっ ...

images
PHPでcharset

header("Content-Type: text/html; charset ...

images
PHPのintval

intvalという見たこと無い関数があったのでメモ。 ■リファレンス http: ...

jquery_logo
classの取り扱い

jQueryでclassを扱う際、 //id=aaaにclass=testを付与 ...

msyql-image
MySQLでIPを整数値としてカラムに格納する

MySQLでIPを整数値としてカラムに格納しているケースがあった。今までIPが必 ...

jquery_logo
tableのフィルター機能

jQueryのプラグインで簡単にフィルター機能が つけられたのでメモ。 ■必要な ...