1996年2月6日

CGIを使わないフォーム機能

ホームページを見て歩くと,画面上でアンケートに答えるようになっているものを見かけます。これはフォーム(form)というHTMLの機能を利用しているものです。



フォームを使って入力されたアンケート結果は,サーバー上に置かれたCGIプログラムを使って処理するのが一般的ですが,プロバイダーによってはこのCGIが使えないところもあります。(GNOCもそう)



CGIが使えないプロバイダーを利用している人は,「フォームは使えない」とあきらめていると思います。(私もそうでした)しかし,最近になってCGIを使わなくても,フォームを使うことができることがわかりました。



フォームを使って入力されたデータをCGIに送るかわりに,指定されたアドレスにメールで送るわけです。これには,"mailto:"というタグを使います。よく,ホームページ上のメールアドレスをクリックすると,自動的にメールを書く画面が現れることがありますね。それです。



しかし,こうして送られてきたメールの内容はURLという形式に変換されているので,そのままでは読むことができません。そこで,それを通常のテキストに変換するツールが必要になってきます。私が使っているのは田中求之さんが作ったClipDecorderというHyperCardスタックです。(Windows版もあるらしい)



このようにして,CGIを使えなくても,フォーム機能を使うことができるのです。フォーム機能の例として,J's Garageのアンケートをご参照ください。



最後に注意点をあげておきます。



"mailto:"はNetscapeだけの拡張タグである

フォーム機能はどのブラウザでも利用できますが,その結果をメールで送るための"mailto:"タグは,Netscapeだけの拡張タグなので,他のブラウザ利用者の場合は,入力はできてもそのデータは送ることができないのです。



Netscape2.0のメール機能にバグがある

ベータ版はもちろん,つい最近リリースされた2.0正式版でも解決されていないとのことですが,Netscape2.0で日本語のメールを送信すると文字化けが発生することがあるそうです。従って,フォームで入力されたデータも,利用者がNetscape2.0を使っていればデータが文字化けしている可能性があるということです。



2005年の回想

当時利用していたGNOCというローカルのプロバイダでは,CGIが使えなかったので,苦肉の策でメールによるゲストブックのフォームを作ったのでした。



0 件のコメント:

コメントを投稿