アンケート/フォームメール


アンケートメール

アンケートや感想をメールでもらいたいと誰もが思う事でしょう。しかし訪問者はなかなかメールを送ってくれません。
そこで、簡単にメールを送れるよう、アンケートフォームを作成しておくことになります。

最近は、プロバイダーの方でフォームデコードと転送サービスをしているところも有るようです。それを利用するのが手っ取り早いのですが、そんなに多くはありません。おそらくサーバーのsendmailというメールシステムを利用するため、多くの人がこれをやると、サーバーに思わぬ負担がかかるからです。

もし、sendmailをドライブする事を許可している(あるいは禁止していない)なら、自分でCGIを書いて、ぜひ利用しましょう。


アンケートメールの方法は何種類かあります。

  1. プロバイダーのサービスを使う。
  2. 自分でCGIを作って、サーバーからメールとして送る。
  3. フォームからサーバーを介せず直接メールとして送る。
  4. メールデコードサービスを利用する。
1)に関しては、ここで説明するまでもありません。
4)はそういったサービスをしているWebに説明があります。
で、2)、3)がここで紹介する方法となります。
ただし、問題もあります。
2)はプロバイダーで自作CGIが利用できる事。そしてSendmailをドライブできる事です。自作CGIを利用できるだけでは駄目です。
3)は、NetscapeNavigatorならいいのですが、Internet Explorerならメーラーにデータを渡せなかったり、渡せてもURL形式のまま送られるため面倒ですが、一応紹介しておきます。

以上の条件を踏まえた上でお読みください。


まずアンケート用のフォームのHTMLドキュメントのサンプルです。

★最重要!これから説明するHTMLドキュメントやCGIはすべて、文字コードをEUC、改行コードをLFにします。CGIで文字コードを統一させる事もできますが、文字化け等のトラブルを極力減らすために、すべて、EUC,LFに統一するということにします。


<HTML>
<HEAD>
<META HTTP-EQUIV="Content-type" CONTENT="text/html;charset=x-euc-jp>
<TITLE>アンケートページ</TITLE>
</HEAD>
<BODY BGCOLOR="#ffffff">
<H2>アンケートに答えてください</H2>
<HR>
<FORM ACTION="/cgi-bin/formail.cgi" METHOD="POST">

お名前は?<BR>
<INPUT SIZE="30" TYPE="text" NAME="name"><P>

性別は?
<INPUT TYPE="radio" NAME="sex" VALUE="男">
<INPUT TYPE="radio" NAME="sex" VALUE="女" CHECKED><P>

E-Mailアドレス<BR>
<INPUT SIZE="30" TYPE="text" NAME="email"><P>
HomePageアドレス<BR>
<INPUT SIZE="40" TYPE="text" NAME="homepage" VALUE="http://"><P>

どうやってこのページを知りましたか?<BR>
<SELECT NAME="where">
        <OPTION VALUE="1" SELECTED>サーチエンジンで見つけた。
        <OPTION VALUE="2">リンクを辿っている内にたどり着いた。
        <OPTION VALUE="3">雑誌やCD-ROMのイエローページで見つけた。
        <OPTION VALUE="4">メールやNews、NIFTYなどの発言のサインでみつけた。
        <OPTION VALUE="5">その他。
</SELECT><P>

どのページがおもしろかったですか?(複数解答可)<BR>
<INPUT TYPE="checkbox" NAME="good" VALUE="1.家の猫、芸達者なんです">家の猫、芸達者なんです<BR>
<INPUT TYPE="checkbox" NAME="good" VALUE="2.新婚旅行はハワイよ〜ん">新婚旅行はハワイよ〜ん。<BR>
<INPUT TYPE="checkbox" NAME="good" VALUE="3.私の描いた水彩画">私の描いた水彩画<BR>
<INPUT TYPE="checkbox" NAME="good" VALUE="4.私がホームページを持つまで">私がホームページを持つまで<BR>
<INPUT TYPE="checkbox" NAME="good" VALUE="5.リンクリンクリンク!">リンクリンクリンク!<p>

「ホームページを持つまで」の記事でどのページが役に立ちましたか?<BR>
2つ選んでください。(Ctrl+クリック)<BR>
<SELECT NAME="study" SIZE="7" MULTIPLE>
        <OPTION VALUE="1.プロバイダー選び">プロバイダー選び
        <OPTION VALUE="2.アプリケーション選び" SELECTED>アプリケーション選び
        <OPTION VALUE="3.デジカメの写真を貼り込む">デジカメの写真を貼り込む
        <OPTION VALUE="4.プロバイダーに送信する">プロバイダーに送信する
        <OPTION VALUE="5.僕が使ったICONと背景集" SELECTED>僕が使ったICONと背景集
        <OPTION VALUE="6.参考にさせていただいたページ">参考にさせていただいたページ
</SELECT><P>

ご挨拶スペース<BR>
<TEXTAREA NAME="comment" ROWS="5" COLS="60"></TEXTAREA><P>
<INPUT TYPE="submit" VALUE="送信">
<INPUT TYPE="reset" VALUE="リセット">
</FORM>

<HR>
</BODY>
</HTML>

それぞれの答えやコメントは、NAME属性の指定によって、以下の変数名に格納されてCGIに渡されます。
お名前は? name
性別は? sex
E-Mailアドレス email
どうやってこのページを知りましたか? where
どのページがおもしろかったですか? good
どのページが役に立ちましたか? study
ご挨拶スペース comment

<META HTTP-EQUIV="Content-type" CONTENT="text/html;charset=x-euc-jp>

大変重要な部分です。HTMLをEUCにて保存してサーバーに送りますが、このように指定することで、CGIに送信する文字コードをEUCにて送る事を保証します。


フォームの説明はここではしません。
別ページのフォームの説明があります。←ここをクリックしてください
このフォームのサンプルがあります。←ここをクリックしてください。

★かならず文字コードをEUC、改行コードをLFにしてください。


上記をコピーしてもいいのですが、必要なものをアーカイブでまとめてありますので、ダウンロードしてください。(すべて文字コードはEUC、改行コードはLFになっていますので、EUC LFに対応したエディタが必要です)
Windows版は解凍にLHAソフトが必要です。ディレクトリ付で解凍してください。
Macintosh版は解凍にStuffIt Expanderが必要です。

 ZAPさんのフリーソフトダウンロードページへ ←ここをクリックする


  • enquete.html(アンケート用フォームHTML)
  • 次ページ:formail.cgiの説明
  • 次次ページ:アンケートメールの設置
  • 次次次ページHTMLから直接メールサーバーに送る方法

  • Copyright:ZAP 1997.4