| 戻る |
| ■ サンプルと特長 |
*1 : Perlモジュールによるメール送信とは、Perl5以上に標準で装備されるIO:Socketモジュールを使って直接送信サーバ(SMTPサーバ)へ接続して送信を行ないます。
Perlモジュールが使用できないサーバ(@niftyなど)や、CGIからのソケット通信が禁止されているサーバではご利用できません。
| プログラムは、セキュリティ対策を施した v3.4以降を必ずご使用ください。 |
| ■ プログラムの入手 |
| Ver: 4.3 | ||
|
postmail.zip |
||
mimew.pl
( 入手先: mime_plsのページ )
(生田昇氏作のBASE64変換ライブラリ)
| ■ プログラムの修正 |
【ディレクトリ構成例】
public_html / index.html (トップページ)
|
+-- postmail / postmail.html
| postmail.cgi [705]
|
+-- lib / jcode.pl [604]
| io-socket.pl [604]
| mimew.pl [604] ... 任意
|
+-- data / log.cgi [606]
|
+-- tmpl / body.txt
conf.html
thx.html
err1.html
err2.html
|
| ファイル名 | パーミッション | 転送モード | |
|---|---|---|---|
| 一般サーバ |
suEXECサーバ CGIWrapサーバ |
||
| postmail.cgi | 755 or 705 | 701 or 700 | アスキー |
| jcode.pl io-socket.pl mimew.pl |
644 or 604 | 600 | アスキー |
| log.cgi | 666 or 606 | 600 | アスキー |
| *.html *.txt |
- | - | アスキー |
|
|
|
|---|
【起動例】
http://〜〜/postmail/postmail.cgi?mode=check
【タグ記述例】
<a href="http://〜〜/postmail/postmail.html">メール送信フォーム</a>
| ■ 補足事項 |
| tmp_body.txt | メッセージ本文 |
| tmp_conf.html | 入力内容確認画面 |
| tmp_thx.html | 送信完了画面 |
| tmp_err1.html | 一般エラー画面 |
| tmp_err2.html | 入力内容エラー画面 |
[ 送信フォーム (HTML) の記述方法 ]
・タグの記述 (1)
おなまえ <input type=text name="name" size=25>
→ このフォームに「山田太郎」と入力して送信すると、
「name = 山田太郎」という形式で受信します
・タグの記述 (2)
お好きな色 <input type=radio name="color" value="青">
→ このラジオボックスにチェックして送信すると、
「color = 青」という形式で受信します
・タグの記述 (3)
E-mail <input type=text name="email" size=25>
→ name値に「email」という文字を使うとこれはメールアドレス
と認識し、アドレスの書式を簡易チェックします
→ (○) abc@xxx.co.jp
→ (×) abc.xxx.co.jp → 入力エラーとなります
・タグの記述 (4)
<input type=checkbox name="cc" value="1" checked> メール控え必要
→ メールの控えを CC で送信者へも返信します。
ただし、name="email" のフィールドへの入力が必須となります。
・タグの記述 (5)
E-mail <input type=text name="_email" size=25>
→ name値の先頭に「アンダーバー 」を付けると、その入力値は
「入力必須」となります。
上記の例では、「メールアドレスは入力必須」となります。
・name値への「全角文字」の使用は可能です
(例) <input type=radio name="年齢" value="20歳代">
→ 上記のラジオボックスにチェックを入れて送信すると、
「年齢 = 20歳代」という書式で受け取ることができます。
・コマンドタグ (1)
→ 入力必須項目を強制指定する(半角スペースで複数指定可)
→ ラジオボタン、チェックボックス対策
→ name値を「need」、value値を「必須項目1 + 半角スペース +必須項目2 + 半角スペース ...」
(例) <input type=hidden name="need" value="名前 メールアドレス 性別">
・コマンドタグ (2)
→ 2つの入力内容が同一かをチェックする
→ name値を「match」、value値を「項目1 + 半角スペース + 項目2」
(例) <input type=hidden name="match" value="email email2">
・コマンドタグ (3)
→ メール件名を指定する
→ この場合、設定で指定する $subject より優先されます。
(例) <input type=hidden name="subject" value="メールタイトル○○">
【FORMタグの記述例】
| ■ おすすページ |