フォームメールCGI Ver4.1

ご利用前に、利用上のご注意をよくお読み下さい。

内容・機能・特徴

☆フォームメールCGI Ver4.1

  • フォームに合わせてCGIファイルを書き換えなくても済むので、フォームデザインを変えてもCGIファイルはメンテナンスする必要がない
  • 複数のフォームをアップしても、CGIファイルはこれ1つで処理出来る
  • Ver.3からの乗り換えには、setファイルやcsvファイルの文字コードを変更が必要
  • Ver3.1からの乗り換えには、setファイルやcsvファイルの文字コードの変更とフォームファイルのフォームエレメント名の変更が必要
  • Ver4のsetファイル・csvファイル・フォームファイルがそのまま使える(CGIファイルを同名で上書きしてください)
  • CSSで自由なデザインが可能

必要なファイル

  • formmail4.cgi
  • jcode.pl(サーバ上に1つあれば充分)
  • mimew.pl(サーバ上に1つあれば充分)
  • フォームファイル
  • CSSファイル
  • setファイル
  • csvファイル(csv出力を行う場合)
  • 送信終了後表示ファイル(終了ページを指定する場合)
  • ログファイル(アクセスログを取る場合)
  • アクセス拒否ホストファイル(アクセス制限を行う場合)

※CGIファイルとPLファイル以外は御自分で作成して下さい。
解凍後のファイルにはサンプルファイルが含まれています。

利用方法

  1. ファイルをダウンロードする
    欲しいファイルを選んで「ダウンロード」ボタンを押して下さい
  2. cgiファイルを自分の使用環境に合わせて書き換える
    書き換え箇所は、スクリプトファイル内に指示されていますが、
    ファイル名はなるべくなら別のものに書き換えた方が良いでしょう。
    「jcode.pl」は、御自分の利用出来るスペースのどこかに1つあれば、
    そこまでのパスを指定するだけで十分です。
    ファイルまでのパスは、絶対パスでも相対パスでもどっちでもOKです。
    念のために、書き換え前の元ファイルは別に取り置きしておくと良いでしょう。
    趣味に応じて、送信完了画面のデザインも変更出来ます。
  3. フォームファイルを作る
    デザインは自由に、項目もお好きなように。
    文字コードはSJISでもEUCでも大丈夫です。(utf-8には対応していません)
    但し、後述のフォーム作成時のお約束に注意して下さい。
  4. CSSファイルを編集する
    cgiが生成する画面のデザインがこれで決まります。
    お好みに合わせて背景やレイアウトなどを自由に設定してください。
  5. setファイルを作る
    後述のsetファイルのお約束に従ってファイルを作成して下さい。
    文字コードはEUC、改行コードはLFです。
  6. csv出力を行う場合は、csvファイル(空ファイル)を作る
    ファイル名の付け方の注意事項はsetファイルと同じです。
    文字コードはEUC、改行コードはLFです。
  7. 終了ページを指定する場合は、送信終了後表示ファイル(HTMLファイル)を作る
    通常のHTMLファイルです。既存のページを利用することも出来ます。
  8. アクセスログを取る場合は、ログファイル(空ファイル)を作る
    文字コードはEUC、改行コードはLFです。
  9. アクセス制限を行う場合は、アクセス拒否ホストファイルを作る
    以下の形式で、拒否したいホストもしくはIPとブラウザ情報のリストを作ります。
       ホスト名もしくはIP,ブラウザ情報
    ブラウザ情報を省略すると、該当するホスト名もしくはIPからのアクセスを全て拒否します。 
    この機能を使用する際は、必ずアクセスログの取得を有効にして下さい。
    文字コードはEUC、改行コードはLFです
  10. 書き換えたcgiファイルを、文字コードをEUC、改行コードをLFで保存する
  11. ファイルをサーバに転送する
  12. パーミッションを以下のように変更する
    • cgiファイル 705
    • cssファイル 604
    • setファイル 604
    • csvファイル 606
    • ログファイル 606
  13. 実際にcgiファイルにアクセスする
    無事に動作すれば成功です♪
    エラーが出た場合は、ファイル名、文字コードや改行コード、
    パーミッションの設定を確認して下さい。

フォーム作成時のお約束

以下 のルールに従ってname属性とvalue属性の値を設定して下さい

name value 説明
set 任意の文字列 setファイル選別用の要素です。
valueには任意の文字列を設定できます。
詳細はsetファイル作成時のお約束をご覧下さい。
back 送信完了画面からの戻り先のパス 送信完了画面からの戻り先を指定する要素です。
ご自身で送信完了画面を作成しない場合に必要となります。
go 送信完了画面ページへのパス 送信完了画面ページを指定する要素です。
ご自身で送信完了画面を作成する場合に必要となります。
confirm 任意の文字列 確認画面の表示の有無を指定する要素です。
valueには任意の文字列を設定出来ます。
何か値が設定されていれば良いので、"on" とでも書いておいて下さい。
subject Subject文字列 Subject(メールのタイトル)です。
無記入で送信されてもエラーにはなりません。
from 差出人のメールアドレス 差出人のメールアドレスの記入欄です。
無記入で送信されてもエラーにはなりません。

※パスは相対パスでも構いませんが、CGIファイルから見た相対パスであることに注意して下さい

その他のフォーム要素は自由に設計出来ますが、上記の事情により自由設計部分のnameとして、
"set","back","go","csv","confirm","subject","from"は使用不可になります

setファイル作成時のお約束

setファイルに従って、CGIファイルは未記入のチェック・メール本文の作成・CSVファイルの作成を行います。

setファイルの命名ルール

setファイルはフォーム毎に必要になります
ファイル名はCGIファイルで初期設定したラベル+フォームファイルで設定したsetファイル選別用の名前で作成しなくてはなりません

設定例:

CGIファイルの初期設定 $set_file_label='set';
フォームファイルの設定 <input type="hidden" name="set" value="1">
setファイルのファイル名 set1.dat

setファイル内の記述ルール

setファイル内の1行ごとのルールは以下のようになっています

name,ラベル,未記入不可,CSVファイル出力不要

メール本文に出力したいものだけを書き出して下さい(subjectは含めないこと!!)
それぞれ、次のように定義されています

項目
name フォーム要素のname
ラベル 送信時にメール本文で表示するラベル
未記入不可 任意の値(ここに何か書いておくと必須入力項目と判定される)
CSVファイル出力不要 任意の値(ここに何か書いておくとCSVファイルへは出力されない)

記述内容は以下のようになります

  • name,お名前,requisite
  • from,E-mail
  • message,ご意見・ご感想,,no

メール本文は以下のようになります

  • お名前
    記入された名前
  • E-mail
    記入されたメールアドレス
  • ご意見・ご感想
    記入されたご意見・ご感想

CSVファイルの中身は以下のようになります。

記入された名前,記入されたメールアドレス

バージョンアップ情報

  • Ver4.1 (2011.5.9)
    • CSSに対応
    • 確認画面における未入力項目のセルが浮き上がる問題を修正
    • エラー画面に「戻る」リンク追加
  • Ver4 (2002.5.4)
    • Ver3.0.1とVer3.1.1の機能を統合
    • 入力フォームの文字コードをSJISとEUCの両方に対応
    • サブジェクトをMIME-BASE64形式に変換
    • メール本文をJISコードで送信
    • 送信前に確認画面を表示させる機能を追加
    • アクセスログ機能を追加
    • アクセス制限(IPキラー)機能を追加