入力フォーム作成
それでは、メールフォームCGIを作成していきましょう。
まずは、HTMLの入力フォームを作成します。
入力フォームは、HTMLのフォームタグを使うのですが…。
メールフォームCGIプログラムファイルに直接入力データを渡すことになるので、決めておかなければいけないことがいくつかあります。
そのあたりを決めつつ、フォームタグを作成していきます。
決めておくこと
HTML入力フォームは、メールフォームCGIにパラメータを送信できることから、作成前にいくつか決めることがあります。
送信方式設定
通常このようなメールフォームを作成する場合は、POST送信を設定します。
パラメータのデータ量が少ない場合には、GET送信でもかまいません。
何らかのファイルをアップロードする場合は、multipart/form-dataとして送信します。
なので今回は、POST送信を採用します。
入力欄とname属性
入力欄については、プログラム設計のところですでに決めてあるので…。
ここでは、name属性を決めていきます。
name属性で指定した文字列というのが、パラメータのキーになります。
半角英数と「_」などの一部記号が使えます。
注意点としては、ひとつのフォームタグに囲まれた範囲で同じ文字列は指定できないというところです。
なぜなら、Perl/CGIプログラム側でパラメータを受け取ったとき、name属性で指定された文字列をキーとして処理していくからですね。
単純に同じ名前のキーがあると、どちらかが消されてしまうわけですね。
なので今回は…。
1、氏名入力欄には、「name」。
2、メールアドレス入力欄には、「email」。
3、お問い合わせ内容入力欄には、「message」。
4、控えメールを送るかどうかのチェックボックスには、「confirm」。
以上、このような文字列を指定し、パラメータのキーとさせます。
隠しデータ
入力データ以外にも、パラメータとして送信しておきたいデータがあれば、いくつか指定することができます。
例えば、3種類の文字コードに対応するので、文字コード名を付加するとか…。
でも、今回はなるべくわかりやすくシンプルな形にしたいので、追加送信するデータは指定しません。
<戻る>
ダウンロード
サンプルプログラムをダウンロードするにはここをクリックします。
ZIP形式で圧縮されているので解凍作業が必要です。
改行コードはWindows形式で、文字コードはShift_Jis入力フォームであればShift_jisで、EUCのものであればEUC、UTF-8のものであればUTF-8です。
メール送信完了後にジャンプさせる「thanks.html」も一緒になっていますが、今は使わないので無視してください。
ちなみに「thanks.html」は、Shift_Jisコードです。