お問い合せフォーム作成

お問い合せフォーム作成の準備

最低限必要なファイル

  • contact.html
  • thanks.html
  • mailform/の中のファイル全て

mailformのシステムファイルで修正が必要なもの

send.cgi
#!/usr/bin/perl --


use Jcode;

########################################################################
##一般的な設定##########################################################
########################################################################

#00.テスト時の誤送信を制御 / 0にしないとメールが飛びません
$conf{'debug'} = 0;

#03.スパムブロック([URL]や[LINK]が含まれた送信をブロック) 1:ON / 0:OFF
$conf{'spam_block'} = 0;

#04.sendmailのパス(サーバ会社へお問い合わせ下さい)
$conf{'sendmail'} = '/usr/sbin/sendmail';

#06.設置者のアドレス(カンマ区切り)
$conf{'mailto'} = 'XXX@XXX';

#07.送信完了時にリダイレクトするサンクスページ
$conf{'thanks'} = 'http://XXXX/thanks.html';

#08.設置者に届くメールの件名
$conf{'subject'} = 'お問い合せがありました【株式会社XXX】';

#09.送信者に届くメールの件名
$conf{'res_subject'} = 'お問い合せありがとうございます【株式会社XXX】';

#10.送信者に届くメールの本文
$conf{'res_body'} = <<'__res_body_eof__';
この度はお問い合せ頂き誠にありがとうございます。
改めて担当者よりご連絡をさせていただきます。

─ご送信内容の確認─────────────────

──────────────────────────

このメールに心当たりの無い場合は、お手数ですが
下記連絡先までお問い合わせください。

この度はお問い合わせ重ねてお礼申し上げます。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
株式会社XXXXX

〒XXX-XXX XXXXXXXXXXXXXX
TEL:000-00-0000 FAX:000-000-000
web site URL:http://www.XXXX.jp
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
__res_body_eof__


#11.Yahooジオシティーズ ジオプラス用設定 1:ON / 0:OFF
$conf{'geoplus'} = 0;

########################################################################
##高度な設定############################################################
########################################################################

#01.リファラーによるスパムチェック 1:ON / 0:OFF
$conf{'domain_check'} = 0;

#01.リファラー(送信元)のURLの一部か全部
$conf{'domain'} = $ENV{'SERVER_NAME'};

#02.HTML側での設定を無効化(タダ乗り対策) 1:ON / 0:OFF
$conf{'html_vals_disabled'} = 1;

#03.全てが英文の送信を拒否 1:ON / 0:OFF
$conf{'language_check'} = 0;

#11.通し番号保存用のファイルのパス
$conf{'serial_file'} = 'count.dat';

#12.件名に通し番号を付ける 1:ON / 0:OFF
$conf{'subject_serial'} = 0;

#12.送信履歴保存用ファイルとダウンロードパスワード
#$conf{'log_file'} = 'sendlog.cgi';
#$conf{'log_passwd'} = '0123';

#13.送信文字コード
$conf{'charset'} = 'ISO-2022-JP';
$conf{'lang'} = 1;

#無変換設定
$conf{'charset'} = 'UTF-8';
$conf{'lang'} = 0;

#3,#5,#7,#8,#9,#10は必ず修正して下さい!

パーミッション設定

send.cgi: 755
count.dat: 777
check.cgi: 755
postcodes/: 755
L get.cgi: 755
Jcode/: 755
L Unicode: 755

サーバーによって異なりますが、基本的にはこちらでOKです。
サーバーによって利用できない場合もありますが、mailp.phpという実行ファイルを作成したので、
FTPを利用して mailform/mailp.php にアップして、ブラウザから、実行して下さい。
例) http://www.accorder.co.jp/mailform/mailp.php

HTMLにメールフォームを入れる

以下の3行は必須。ページのどこかに入れて下さい。
探しやすく<head>に入れるのがいいとは思います。

<link rel="stylesheet" href="mailform/mailform.css" type="text/css">
<script type="text/javascript" src="mailform/mailform.js" charset="utf-8"></script>
<script type="text/javascript" src="mailform/postcodes/get.cgi?js" charset="utf-8"></script>

FORMの設定

下のコードによくある間違いが2点御座います。どこでしょうか?

答え①→会社名の項目、貴社名になっています。

答え②→郵便番号が必須項目なのに、mfpcの部分は、そう書かれていないです。

<form id="mailform" method="post" action="mailform/send.cgi" onSubmit="return sendmail(this);">
<table border="0" cellspacing="0" cellpadding="0" class="mailform" style="border-left:0px">
<tbody>
<tr>
<th>会社名</th>
<td><input type="text" name="貴社名" class="mailform_lg_s"></td>
</tr>
<tr>
<th>部署名</th>
<td><input type="text" name="部署名" class="mailform_lg_s"></td>
</tr>
<tr>
<th>お名前<span>(必須)</span></th>
<td><input type="text" name="お名前(必須)" class="mailform_lg_s"></td>
</tr>
<tr>
<th>性別</th>
<td>
<label><input type="radio" name="性別" value="男性" id="RadioGroup1_0">男性</label> 
<label><input type="radio" name="性別" value="女性" id="RadioGroup1_1">女性</label>
</td>
</tr>
<tr>
<th>ふりがな<span>(必須)</span></th>
<td><input type="text" name="ふりがな(必須)" class="mailform_lg_s"></td>
</tr>
<tr>
<th>電話番号</th>
<td><input type="text" name="電話番号" class="mf mailform_lg_ss"></td>
</tr>
<tr>
<th>郵便番号(必須)</th>
<td><input type="text" name="郵便番号(必須)" class="mf mailform_lg_ss"> <input type="button" value="〒から住所を自動入力" onClick="mfpc('mailform','郵便番号','住所');"></td>
</tr>
<tr>
<th>住所</th>
<td><input type="text" name="住所" class="mf mailform_lg_l"></td>
</tr>
<tr>
<th>Email<span>(必須)</span></th>
<td><input type="text" name="email(必須)" class="mf mailform_lg_s"></td>
</tr>
<tr>
<th>Email 確認<span>(必須)</span></th>
<td><input type="text" name="confirm_email" class="mf mailform_lg_s"></td>
</tr>
<tr>
<th>お問い合せ目的</th>
<td>
<select name="お問い合せ目的">
<option value="">--- 選択してください ---</option>
<option value="お見積り希望">お見積り希望</option>
<option value="資料請求">資料請求</option>
<option value="お電話でのご相談">お電話でのご相談</option>
</select>
</td>
</tr>
<tr>
<th>ご用件<span>(必須)</span></th>
<td><textarea name="ご用件(必須)"></textarea></td>
</tr>
<tr class="send_btn">
<th class="last"></th>
<td><input type="submit" value="メールを送信する" class="sb_btn1"> <input type="reset" name="reset" value="リセット" class="sb_btn2"></td>
</tr>
</tbody>
</table>
</form>

でも、これだけじゃない。案件によって違う。

サーバーの仕様による不具合、Directoryの構成が違ったり、英語版の対応があったり、様々です。
しかし、上に書かれたところは、ほとんど対応しないといけないところなので、しっかりミスしないように守りましょう。
最後に contact.html と thanks.html に Google Analyticsコード入れるのも忘れないでください。

ShinUjin :