お問い合わせの設置 (POST

メールフォームの作成(POST-MAIL)
作成日
作成者
年 月
井上 澄人
日
■POSTーMAILについて
POST-MAIL とは、個人・法人のいずれも自由(無償)に利用可能で、WEB ページへ簡単に設置できる
メールフォーム(お問い合わせフォーム)です。累計 50 万回ほどダウンロードされた実績があります。
(1)配布サイト
KENT-WEB( http://www.kent-web.com/ )で配布されています。
Shift-JIS 版/UTF-8 版の2種類が用意されており、同じサイト内で上位互換のプログラムも
配布されています。
(2)動作環境
「Perl(CGI)/sendmail」の両方が動作する環境であれば動作します。
私の場合、Linux(レンタルサーバ)では動作確認していますが、Windows(開発用 PC)では
動作を確認していません。POST-MAIL は内部で sendmail というメール送信プログラムを利用してい
ます。しかし、Windows では sendmail が無償で利用できず、代替ソフトによる送信も失敗します。
そこで、サイトが未完成の段階からレンタルサーバの「テスト環境」へ公開・開発しています。
なお、私が利用しているレンタルサーバ契約「Sakura インターネット スタンダード」や
「ServerQueen Q-S1」は POST-MAIL の「簡単インストール」に対応しています。
ただし、ServerQueen Q-S1 の場合は注意が必要です。この方法で同一ドメイン内に導入できる
POST-MAIL は1つに限定されます。パソコン版サイト・スマホ版サイトの両方に POST-MAIL を
導入するならば、2つ目以降の POST-MAIL に関しては、後述する「アクセス権限」に注意して、
レンタルサーバの「簡単インストール」を使わず POST-MAIL を設置する必要があります。
(3)機能
POST-MAIL には、入力必須チェック/二項目の同一チェック/メールアドレス書式チェックの
3種類の入力チェック機能があります。また、成功画面の有り/無し、文字コードの自動判別など
細かな設定も可能です。
(4)使用方法
レンタルサーバへ FTP でログイン、POST-MAIL の構成ファイルを FTP でアップロードします。
その後、いくつかのファイルのアクセス権限を変更して、実行可能な状態にします。
そして、設定ファイル「inig.cgi」を編集して、いくつかの画面を HTML で作成して完成です。
より詳細な手順は、後述する「POST-MAIL の設置」や「POST-MAIL のアクセス権限」を
参考にして下さい。
Copyright(C) 2014 www.go-java.net All Rights Reserved
メールフォームの作成(POST-MAIL)
作成日
作成者
年 月
井上 澄人
日
■POST-MAILの構成ファイル
ファイル名
postmail.cgi
内容
正常動作に
アクセス権限
必須なファイル
変更が必須
POST-MAIL の中核プログラム。
メール送信・確認画面・エラー画面の
○
表示など、多機能で重要なプログラム。
check.cgi
POST-MAIL の動作テスト用プログラム。
通常はあまり利用されない。
init.cgi
?
設定ファイル。
ここで送信者メールアドレスや
○
送信前の確認の有無、
data/log.cgi
data/ses.cgi
ログファイル。
?
セッションファイル(詳細は不明)。
○
(755)
○
(755)
○
(666)
○
(666)
○
(666)
tmpl/mail.txt
求人用のメールアドレスに
送られてくるメール本文。
tmpl/reply.txt
応募者への返信メールに
用いるメール本文。
tmpl/conf.html
メール送信前の確認画面。
tmpl/thx.html
メール送信後の成功を伝える画面。
※フォルダを tmpl 以外に変えると
○
-
○
-
△
-
◎
-
◎
-
◎
-
異常動作が直ることがあります。
tmpl/err1.html
メール送信時の入力チェックで
メールアドレス書式の異常や
システム内部の異常を表すエラー画面。
tmpl/err2.html
メール送信時の入力チェックで
異常がある場合の入力エラー画面。
■POST-MAILの設置
(1)アップロード
POST-MAIL の構成ファイル(全て)を WEB サーバへ FTP アップロードします。
また「問い合わせフォーム」と「エラー画面1、エラー画面2、成功画面、確認画面」は、
ドメイン直下から 1~2 階層ほどの浅い階層へ設置して下さい。
そして、設定ファイル「init.cgi」を編集・ FTP でアップロードします。
POST-MAIL の構成ファイル( /post-mail/○○○ )は初期状態から移動しない方が良いでしょう。
Copyright(C) 2014 www.go-java.net All Rights Reserved
メールフォームの作成(POST-MAIL)
作成日
作成者
年 月
井上 澄人
日
■各種画面の作成・配置
KENT-WEB( http://www.kent-web.com/mail/postmail.html )のホームページに記述されている情報を
手掛かりに、必要なテキストファイル・ HTML ファイルを作成・編集します。
【 応募フォームの HTML 】
<form action="../post-mail/postmail.cgi" method="post">
<input type="hidden" name="need" value="name email email2 お電話 ご年齢 身分証 面接希望日時" />
<div class="contact">
<table>
<tr><th>ご氏名</th>
<td><input type="text" name="_name" value="" /></tr>
<tr><th>お電話</th>
<td><input type="text" name="_お電話" value="" /></td></tr>
<tr><th>メールアドレス</th>
<td><input type="text" name="_email" value="" /></td></tr>
</table>
</div>
<p align="right" style="margin-right:20px;">
<input type="submit" value="送信" /><input type="reset" value="リセット" /></p>
<input type="hidden" name="match" value="email email2" />
</form>
<BR>
■POSTーMAILのアクセス権限
POST-MAIL は、初期設定のアクセス権限では正常に動作しないため、アクセス権限を変更します。
FTP アップロードした後、POST-MAIL 構成ファイルのアクセス権限を、以下のように設定します。
ファイル名
アクセス権限
転送モード
postmail.cgi
check.cgi
755
ASCII モード
init.cgi
666
data/log.cgi
666
(アスキーモード)
data/ses.cgi
Copyright(C) 2014 www.go-java.net All Rights Reserved
メールフォームの作成(POST-MAIL)
作成日
作成者
年 月
井上 澄人
日
■モバイル版の作成
パソコン版で作成したファイル/ソースコードの多くはスマホ版に流用できます。
特 に 設 定 フ ァ イ ル ( init.cgi ) と 受 信 メ ー ル 本 文 ( tmpl/mail.txt ) 、 返 信 メ ー ル 本 文
( tmpl/reply.txt )は、全く編集せず、そのままスマホ版に流用できます。
また、確認画面・エラー画面1・エラー画面2の元となる HTML には以下のコードが含まれます。
いずれも誤って削除すると、POST-MAIL が正常に動作しなくなるため、画面の編集には注意して下さい。
画面
削除できないタグ
確認画面
<!-- cell_begin --> <!-- cell_end -->
!key!
!val!
!key!
!val!
<!-- hidden -->
<form action="!mail_cgi!" method="post">
エラー画面1
!error!
エラー画面2
<!-- cell_begin --> <!-- cell_end -->
スマホ版/パソコン版のいずれも、確認画面・エラー画面1には、前の画面で入力したデータが
テーブル<table>タグで表示されます。具体的には、項目名が<TH>タグ・入力データが<TD>タグとして
表示されます。
この仕様はパソコン版の応募フォームを作成する上では問題ないのですが、スマホ版の応募フォーム
を作成する際には、レイアウトが崩れる問題が発生します。これを防ぐには、確認画面・エラー画面1
のソースを以下のように変更します。後はスマホ版の CSS ファイルで<tr><th><td>のスタイルを
定義するだけです。
変更前(パソコン版)
変更後(スマホ版)
<!-- cell_begin -->
<!-- cell_begin -->
<tr>
<tr>
<th>!key!</th>
<td>!val!</td>
</tr>
<!-- cell_end -->
<th>!key!</th>
</tr>
<tr>
<td>!val!</td>
</tr>
<!-- cell_end -->
■注意点
・文字化けが発生した場合は「init.cgi」の「$cf{conv_code} = 0;」の値を 1 に変更
・コメントや「!○○○!」で囲われた部分は変更・削除しない
変更・削除するとエラーメッセージ「テンプレートが不正」と表示されます
・メールが 25 番ポートブロック ( Outbound Port25 Blocking ) されていないか注意
Copyright(C) 2014 www.go-java.net All Rights Reserved