DrasticGridを利用すると、簡単にMySQLデータベースのテーブルをWebページに取り込み表示することができる。しかも、データの変更、並び替え、ページ分割といった機能も備えており、レコードの追加や削除も可能だ。
DrasticGridはDrasticDataが提供している3つのコントロールの1つだ。なお、残りの2つ、DrasticCloudとDrasticMapsも、やはりMySQLデータベースのデータを取り出すためのコントロールだ。
試用には64ビットFedora 9マシンを使った。DrasticGridにはFedora用のパッケージはないので(Ubuntu用、openSUSE用もない)、ダウンロード・ページDrasticToolsにあるバージョン0612のzipファイルを使ってインストールした。そのコマンドを下に示す。WebサーバーにDrasticToolsをインストールしたので、Webサーバー上にあるすべてのWebプロジェクトからそのツール群を(したがってDrasticGridも)使うことができる。下に示したコマンドは、DocumentRootが/var/www/htmlであることを前提にしている。DocumentRootはディストリビューションごとに異なるので、DocumentRootのパスが列挙されているリストを参照して適宜変更すること。また、DocumentRootからサンプルのPHPファイルを移しているが、これは必須ではない。しかし、実運用システムではこうしておいた方がよい。
# cd /var/www/html # unzip /.../DrasticTools0612.zip # cd ./DrasticTools/ # mkdir -p /usr/local/php/DrasticTools # mv Doc.txt License.txt /usr/local/php/DrasticTools # mv Example* /usr/local/php/DrasticTools # cd /var/www/html # chown -R root.apache DrasticTools # chmod -R o-rwx DrasticTools # chmod -R g-w DrasticTools
DrasticGridに含まれているサンプルはすべて、JavaScriptパッケージmootoolsを必要とする。このツールはcoreとmoreという2つのJavaScriptファイルとしてダウンロードするのだが、それぞれに含めるコンポーネントを選べるようになっている。今回の試用では、すべてを選択してダウンロードした。ダウンロードした2つのJavaScriptファイルは/var/www/html/DrasticTools/jsにコピーする。
試用で使ったMySQLデータベースのスキーマを下に示す。実用的には、画面に収まるようにフィールドの数を調整するのが適当だ。しかし、ここでは、DrasticGridのデータ入力支援機能を見るため、敢えて、enum、date、timeなどいろいろなデータ型を並べている。
mysql> create table folks (
name varchar( 100 ),
birthday date,
yeartest year,
gender enum('m','f'),
realtest real,
numtest numeric(10,3),
timetest time,
tstest timestamp,
dttest datetime,
waffle text,
blobtest blob,
id int AUTO_INCREMENT,
primary key(id) );
mysql> insert into folks values (
'sam', '1956-01-02', 2008, 'm',
5.6, 5.6, '23:00',
'1986-01-02 23:00',
'1956-01-02 23:00',
'some nice and long waffle could go here',
'some nice blob', default );
mysql> insert into folks values (
'sally', '1963-02-21', 1999, 'f',
6.3, 6.3, '09:00',
'1983-2-21 09:00',
'1962-2-21 09:00',
'lets party', 'lets party blob', default );
mysql> insert into folks values (
'susan', '1948-8-14', 1949, 'f',
4.8, 4.8, '13:00',
'1988-8-14 13:00',
'1948-8-14 13:00',
'something', 'somethingblob', default );
スキーマと一緒に、データベースにレコードを格納するコマンドも示しておいた。これで、データも準備できた。次に、Webブラウザーで使うPHPファイルを置くディレクトリーを用意する。今回の試用では、DocumentRootの下にDrasticGridTestを作り、このディレクトリーにPHPファイルを置いた(下のコードを参照)。これで、PHPファイルを呼び出し、このサーバー上のWebプロジェクトからDrasticGridを試用する準備が整った。
# mkdir /var/www/html/DrasticGridTest # chown ben.apache /var/www/html/DrasticGridTest # chmod +s /var/www/html/DrasticGridTest
