【設置メモ】Transmit Mailの設定方法
メールフォーム「Transmit Mail」設置方法の覚書です。
PHPで制作されたフォーム「Transmit Mail」の評判が良いので設置してみました。
フォームの構造
index.phpに、入力画面のinput.htmlや、確認画面のconfirm.htmlを読み込んで表示するようになっていて、デザインも自由にできるようになっています。
メールフォームの設定は「config.php」を編集します。
メールは「mail_autoreply_body.txt」を編集します。
返信メールは「mail_body.txt」を編集します。
Config.php、qdmail.phpファイルの編集
公式マニュアルを参考にconfig.phpファイルを編集します。
「index.php」を「inquiry.php」として利用するので、123行目を編集しました。
[html]
// メールフォームプログラムファイル
define('MAILFORM_PROGRAM', 'inquiry.php');
[/html]
サーバは「qmail」を採用しているので、「lib」フォルダのqdmail.phpの107行目の「"¥r¥n"」を「"¥n"」に編集します。
メール、返信メールのエラー、表示がおかしい場合は、ここを編集してみてください。
[html]
var $LFC = "\n"; // Notice: CRLF ,If you failed, change to "\n"
[/html]
パーミッションの変更
ファイルをサーバにアップしたら「logs」「temp」ディレクトリのパーミッションを777に変更します。
確認画面のお問い合わせ文章が改行表示されるように調整
確認画面で、お問い合わせに記入した文章が改行されずに表示されるので、改行されるように確認画面テンプレートを修正します。PHPの関数「nl2br」を追記するだけです。
[html]
{$お問い合せ.value.nl2br}
[/html]
フォームタグのコーディング
フォームタグをコーディングしていきます。
基本的なタグは下記になります。
[html]
<input name="お名前" type="text" value="{$お名前}" size="30" >
[/html]
必須事項でバリデーションをおこなう場合は下記になります。
[html]
<input name="お名前" type="text" value="{$お名前}" size="30" />
<input type="hidden" name="required[]" value="お名前" />
{if:$required.お名前}
<div><em>{$required.お名前}</em></div>
{/if:$required.お名前}
[/html]
さらに、半角のみ、数字のみ、メールアドレスのみ、などの入力制限もおこなえます。
下記は「必須項目で数字のみ」の入力制限の場合。
[html]
<input type="text" name="年齢" value="{$年齢}" size="6" />
<input type="hidden" name="required[]" value="年齢" />
<input type="hidden" name="num[]" value="年齢" />
{if:$required.年齢}
<div><em>{$required.年齢}</em></div>
{/if:$required.年齢}
{if:$num.年齢}
<div><em>{$num.年齢}</em></div>
{/if:$num.年齢}
[/html]
同梱されてるサンプルファイルを参考に、ラジオボタンや添付ファイルなどのタグも同様にコーディングしていきます。
確認画面、エラー画面はloopで表示してくれるのでとても楽に設置できます。