動作設定(config.php)
PHPメールフォームは、config.phpファイルを変更するとより多くの機能をご利用いただけるようになります。 下記に具体的なタスクと注意点を述べます。熟練したデザイナー、開発者の方は、設定値の一覧もご覧ください。
- 共通: 変更の際は文字コードに注意してください
- 管理者(自分)・ユーザ向けメールを送信できるようにする
- SMTPサーバー経由でメール送信する (Ver.0.3-、上級者向け)
- ログ閲覧ページを見られるようにする
- 共用SSLサーバーで利用する
- 設定値の一覧
- 以前のバージョンの情報
共通: 変更の際は文字コードに注意してください
各文字コードに対応したエディタで編集する必要があります。 Windowsでは、TeraPadをおすすめしています。
- UTF-8版は、UTF-8N(BOM無し)形式で保存する必要があります。
- Windowsのメモ帳(notepad.exe)は、Shift_JIS版の場合のみ使用できます。UTF-8版の変更に使用しないで下さい。

管理者(自分)・ユーザ向けメールを送信できるようにする
送り先、送信元メールアドレスを設定する (必須)
MAIL_SENDTOに送り先(To)を、
MAIL_FROMに送信元(From)のメールアドレスを設定します。
sendmailが利用可能なサーバーの場合、これで管理者向けメールが送信されるようになります。
システム管理者やレンタルサーバーマニュアルによって送信元(From)アドレスの指示がある場合は、 それに従ってMAIL_FROMを設定してください。 よくわからない場合は、送り先、送信元とも同じアドレスを設定します。

ユーザ向けメールの送信を許可する (Ver.0.3-)
SEND_USERMAILを1に設定します。
_1default.htmlの<input name="email">をユーザのメールアドレスとして解釈し、メール送信します。

スパムメール送信回避のため、SEND_USERMAILは既定で「0」(無効)になっています。 PHPメールフォームのスパム対策機能が利かずにスパム投稿を受け付け始めたら、 ただちに「0」に戻してユーザ向けメール送信を停止してください。
SMTPサーバー経由でメール送信する (Ver.0.3-、上級者向け)
下記の要件を満たす場合、PHPメールフォームは自動的にSMTPサーバー経由のメール送信を試みます。
- php.iniのinclude_pathでパスを通したディレクトリにPEAR::Mailがインストールされている。
- SMTP_SERVER、SMTP_PORTが設定されている。 (SMTP_AUTH、SMTP_USERNAME、SMTP_PASSWORDは必要に応じて。)
ログ閲覧ページを見られるようにする
管理者パスワードを設定すると、問い合わせデータをWebで閲覧できる「ログ閲覧ページ」が見られるようになります。
既定では管理者パスワードは設定されておらず、ログ閲覧を行うことはできません。
管理者パスワードは、config.phpのADMIN_PASSWORDで設定します。
共用SSLサーバーで利用する
共用SSLサーバーで利用する場合には、config.phpのSCRIPT_URLにメールフォーム設置先アドレスを設定してください。
ひとまず共用SSLサーバーに設置し、設置先アドレスをコピーします。
コピーした設置先アドレスをconfig.phpのSCRIPT_URLに設定し、
config.phpを更新してください。
設定値の一覧
| 導入Ver. | 変数名 | 説明 |
|---|---|---|
| 0.1b- | SMTP_SERVER | メール送信に使用するSMTPサーバーのホスト名、IPアドレス。 (Ver.0.1b-0.24b: Windows版PHPのみ有効、php.iniのSMTPディレクティブと同義) |
| 0.1b- | SMTP_PORT | メール送信に使用するポート番号。 (Ver.0.1b-0.24b: Windows版PHPのみ有効、php.iniのsmtp_portディレクティブと同義) |
| 0.3- | SMTP_AUTH | SMTP認証の方法。PEAR::Net/SMTPが受け入れる値。'DIGEST-MD5', 'CRAM-MD5', 'LOGIN', 'PLAIN' |
| 0.3- | SMTP_USERNAME | SMTP認証で用いるユーザ名 |
| 0.3- | SMTP_PASSWORD | SMTP認証で用いるパスワード |
| 0.3- | SEND_USERMAIL | ユーザ向けメールを送信するか。0: 送信しない、1: 送信する。 |
| 0.1b- | MAIL_SENDTO | メール送信先(To)アドレス。フレーズ形式も使用可能。複数のメールアドレスは指定できない。 日本語メール以外を受信・閲覧できないアドレスを指定する場合、MAIL_ENCODINGはISO-2022-JPを設定すること。 |
| 0.1b- | MAIL_FROM | メール送信元(From)アドレス。SMTPサーバー、またはsendmailに許可されたアドレスである必要がある。フレーズ形式は無視される。 |
| 0.1b- | MAIL_SUBJECT | メールの件名(Subject)。管理者向け、ユーザ向け共通。 |
| 0.21b- | MAIL_ENCODING | 送信メールの文字エンコーディング。'UTF-8'と'ISO-2022-JP'が設定可能。 UTF-8メールの閲覧ができない携帯アドレスなどに送信する可能性がある場合、ISO-2022-JPを設定すること。 |
| 0.2b-0.22b | MAIL_LINEBREAK | メールヘッダの改行文字。qmailのsendmailラッパー(例:ロリポップ!)を用いてWebマスター宛てメールを送信する場合、"\n"に設定すること。 |
| 0.1b- | ADMIN_PASSWORD | 管理者パスワード。未設定のとき、ログ閲覧ページは使用不可能。 |
| 0.23b- | GZIP_ENCODING | gzipエンコーディングを使用するか。0: なし、1: あり。 |
| 0.21b- | ERRMSG_REQUIRED | 必須項目が入力されなかったときのエラーメッセージ内容。 |
| 0.24b- | TIMEZONE_HOURS | 表示する時間に適用するタイムゾーンを、GMTとの差分で指定する。単位:時間。 例) 日本時間(JST): +9.0、太平洋時間(PST): -8.0 |
| 0.1b-0.23b | APP_TIMEZONE | タイムゾーン。PHPマニュアル: サポートされるタイムゾーンの文字列を受け付ける。空白のとき、おおむねサーバーのタイムゾーンに準拠。ログ閲覧ページの時刻表示で使用。 |
| 0.1b- | APP_TIMEFORMAT | 時刻表示のフォーマット。date関数のフォーマット文字列と同じ。 |
| 0.24b-0.3 | OUTHEADER_APP | Ver.0.31で廃止されました。
スクリプト情報をHTTPヘッダX-Jb-Appで出力するかどうか。0: 出力しない、1: 出力する。 |
| 0.1b- | ANTISPAM_LEVEL | 対スパム機能の動作レベル。1: 記録のみ、2: 記録に加え、疑わしいホストからのPOST要求を拒否。 |
| 0.34- | SCRIPT_URL | 共用SSLサーバーの場合に、メールフォーム設置先アドレス(URL)を設定する。 |
| 0.1b- | MAILFORM_DATAFILE | PHPメールフォームの問い合わせデータを保存するファイル。 |
| 0.1b- | ANTISPAM_HOSTFILE | 対スパム機能のホスト記録ファイル。疑わしいホスト一覧。詳しくはスパム対策機能の詳細を参照。 |
| 0.1b- | ANTISPAM_LOGFILE | 対スパム機能のPOST要求ログファイル。 |
| 0.1b- | ANTISPAM_LOCKFILE | 対スパム機能の排他制御用ファイル。 |
| 0.1b- | HTML_DEFAULT | PHPメールフォーム「問い合わせフォーム」ページのテンプレートHTMLファイルパス。 |
| 0.1b- | HTML_CONFIRM | PHPメールフォーム「確認」ページのテンプレートHTMLファイルパス。 |
| 0.1b- | HTML_THANKS | PHPメールフォーム「送信しました」ページのテンプレートHTMLファイルパス。 |
| 0.1b- | HTML_VIEW | PHPメールフォーム「ログ閲覧」ページのテンプレートHTMLファイルパス。 |
| 0.3- | MAIL_ADMIN | 管理者向けメールのテンプレートファイルパス。 |
| 0.3- | MAIL_USER | ユーザ向けメールのテンプレートファイルパス。 |
| 0.31- | SERIAL_KEY | シリアルキー。ビジネスライセンス適用手続きで設定・使用します。 |