今ではホームページでPHPや.NETが普通に使えるが、以前はスタティックなサイトが多く、せいぜいアクセスカウンターとかWebメールとかのCGIが用意されているだけ。 チラシの電子版。
でも、多くはそれで問題なかった。 メールも送れるし。
ヤドクガエルなどを飼育・販売している人と知り合って、少しの間ホームページの手伝いをしたことがある。
トップページは一度作成すれば当分は問題ないが、当然、商品というか彼らの紹介ページは、随時 更新ができないといけない。
でも、その人はHTMLを書いたりするタイプではなかったので、簡単な方法を用意する必要があった。
更新するといってもデータはカード型DBみたいに、固定の枠に個々のデータを追加・修正・削除するだけ。
なので、
① エクセルで枠を作って、その中に名前、価格などのデータを登録。写真に関してはファイル名を登録。
② VBAにより、そのデータをXML形式で出力。
③ XMLをHTMLとして出力できるXSLTを作成。
④ VBAにより、XMLとXSLTからHTMLファイルを出力。
④のHTMLの作成は、対応するXSLファイルをアップロードしておけば、XMLにアクセスすればよいだけなので、本当は不要。
ただ、当時はXMLに対応できないブラウザもあったのでHTMLを作成した。
この方法は、リンクリストや名簿などエクセルで管理しやすいものでは、ボタンクリック1発で作成されたHTMLファイルをアップロードするだけでサイトの管理ができるので、薬剤師会のサイトでも当初、重宝した。
研修会案内などもなんとかエクセルで管理できたし、トップページなども複数のXMLを利用するXSLTでなんとかなった。
不要在庫掲示板というものもPHPやDBが利用できなかったので、会員に枠のエクセルをダウンロードしてもらい、入力後返信してもらった。同じ形式のエクセルを同じフォルダーに入れて順次オープンする仕様で、ひとつのXMLを作成し、この手法を適応した。
今なら、画面に直接入力してもらうのが良いと思うが、慣れたエクセルで入力できるので敷居が低いというメリットはあった。
今のブラウザではXML+XSLTを表示できないものはないので、エクセルからXMLを作成すれば良いだけだが、XSLTを作成するよりPHPの方が楽なので、エクセルで作成されたXMLをPHPで利用する。
Topページなど、HTML形式が求められる場合は、javascriptで、XMLを表示するPHPを呼び出す。 <script language="JavaScript" src="hoge.php" />
XSLTは使っていないが、「エクセルでHTML」ではある。
? PHPのSimpleXMLではSortができない。
と思うので、配列に変換してSortしているが、PHPからXSLTを利用すると簡単なのかもしれない。