トップ » PHPスクリプト » PHPメールフォーム » 動作設定(config.php)

動作設定(config.php)

(2009/02/05)

PHPメールフォームは、config.phpファイルを変更するとより多くの機能をご利用いただけるようになります。 下記に具体的なタスクと注意点を述べます。熟練したデザイナー、開発者の方は、設定値の一覧もご覧ください。

共通: 変更の際は文字コードに注意してください

各文字コードに対応したエディタで編集する必要があります。 Windowsでは、TeraPadをおすすめしています。

  • UTF-8版は、UTF-8N(BOM無し)形式で保存する必要があります。
  • Windowsのメモ帳(notepad.exe)は、Shift_JIS版の場合のみ使用できます。UTF-8版の変更に使用しないで下さい。
TeraPadでUTF-8N形式のファイルを保存する

管理者(自分)・ユーザ向けメールを送信できるようにする

送り先、送信元メールアドレスを設定する (必須)
MAIL_SENDTOに送り先(To)を、 MAIL_FROMに送信元(From)のメールアドレスを設定します。 sendmailが利用可能なサーバーの場合、これで管理者向けメールが送信されるようになります。

システム管理者やレンタルサーバーマニュアルによって送信元(From)アドレスの指示がある場合は、 それに従ってMAIL_FROMを設定してください。 よくわからない場合は、送り先、送信元とも同じアドレスを設定します。

TeraPadでMAIL_SENDTO、MAIL_FROMを設定する

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

TeraPadでSEND_USERMAILを設定する

スパムメール送信回避のため、SEND_USERMAILは既定で「0」(無効)になっています。 PHPメールフォームのスパム対策機能が利かずにスパム投稿を受け付け始めたら、 ただちに「0」に戻してユーザ向けメール送信を停止してください。

SMTPサーバー経由でメール送信する (Ver.0.3-、上級者向け)

下記の要件を満たす場合、PHPメールフォームは自動的にSMTPサーバー経由のメール送信を試みます。

ログ閲覧ページを見られるようにする

管理者パスワードを設定すると、問い合わせデータをWebで閲覧できる「ログ閲覧ページ」が見られるようになります。 既定では管理者パスワードは設定されておらず、ログ閲覧を行うことはできません。
管理者パスワードは、config.phpのADMIN_PASSWORDで設定します。

TeraPadでADMIN_PASSWORDを設定する

共用SSLサーバーで利用する

共用SSLサーバーで利用する場合には、config.phpのSCRIPT_URLにメールフォーム設置先アドレスを設定してください。
ひとまず共用SSLサーバーに設置し、設置先アドレスをコピーします。
共用SSLサーバー: メールフォーム設置先アドレスをコピー

コピーした設置先アドレスをconfig.phpのSCRIPT_URLに設定し、 config.phpを更新してください。
共用SSLサーバー: SCRIPT_URLを設定する

設定値の一覧

導入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.22bMAIL_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.23bAPP_TIMEZONE タイムゾーン。PHPマニュアル: サポートされるタイムゾーンの文字列を受け付ける。空白のとき、おおむねサーバーのタイムゾーンに準拠。ログ閲覧ページの時刻表示で使用。
0.1b-APP_TIMEFORMAT 時刻表示のフォーマット。date関数のフォーマット文字列と同じ。
0.24b-0.3OUTHEADER_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 シリアルキー。ビジネスライセンス適用手続きで設定・使用します。