PHPメールフォーム作成ツール

お問い合わせフォームのHTML、CSS、PHP送信処理、確認画面、自動返信メール用ファイルをブラウザ上でまとめて生成できます。項目を追加・並び替え、送信先メールアドレスを設定すると、ZIP形式でフォーム一式をダウンロードできます。

  • 入力フォーム index.php
  • 確認画面 confirm.php
  • 送信処理 send.php
  • 完了画面 complete.php
  • 設定ファイル mailconfig.php
  • フォーム用CSS style.css

生成したファイルは、PHPが使えるサーバーへアップロードして利用します。公開前に、送信テスト、迷惑メールフォルダの確認、Fromメールアドレスのドメイン設定、reCAPTCHA設定を確認してください。

📝 1. フォームの項目設定

「≡」をドラッグして並び替えができます。HTMLタグやCSSクラスも自動で書き出されます。

選択肢:
⚙️ 2. メールの送信設定
受信先メールアドレス 必須

お問い合わせを受け取るご自身のメールアドレス

送信元メールアドレス (From) 必須

※さくらサーバー等での送信エラーを防ぐため、必ず「フォームを設置するサーバーと同じドメイン」を指定してください。

件名
送信者名(会社名など)
本文(ヘッダー部分)

※この文章の下に、ユーザーが入力した内容が自動で挿入されます。

署名(フッター部分)

※ユーザーの入力内容の下に挿入される署名(会社名、住所、連絡先など)です。

reCAPTCHA v3 キー (任意)

設定するとGoogleのスパム対策が有効になります。(未設定でも簡易的なハニーポット対策は常時稼働します)

ZIPを解凍してサーバーへ設置し、送信テストまで進められます。

使い方と設置方法

1. ZIPを解凍してサーバーへアップロード
ダウンロードしたZIPファイルを解凍すると、index.phpsend.php などのファイル群が入っています。これらをFTP等でサーバーにアップロードし、ブラウザで index.php にアクセスしてフォームが表示されることを確認してください。
2. CSSのカスタマイズについて
同梱されている style.css は、既存サイトのCSSと干渉しないよう、すべてのクラス名に wtg- というプレフィックス(接頭辞)がついています。デザインを変更したい場合は、このCSSファイルを直接編集してください。
🛡️ スパム対策(reCAPTCHA v3)の導入方法

reCAPTCHA v3とハニーポットによるスパム対策に対応できます。
1. Google reCAPTCHA にアクセスし、サイトを登録します(バージョンは必ず v3 を選択してください)。
2. 登録後に発行される「サイトキー (Site Key)」と「シークレットキー (Secret Key)」を、このツールの設定欄に入力してからZIPを生成してください。本番ドメインでの動作確認も行ってください。

次にやること(設置チェックリスト)

  1. ZIPを解凍する
  2. 生成されたファイル一式をサーバーにアップロードする
  3. index.php へアクセスしてフォーム表示を確認する
  4. テスト送信する
  5. 管理者宛メールと自動返信メールの到着を確認する
  6. 迷惑メールフォルダも確認する
  7. reCAPTCHAを使う場合は本番ドメインで動作確認する

送信できない場合の確認ポイント

  • PHPが使えるサーバーか
  • mb_send_mail() が利用できるか
  • Fromメールアドレスが設置ドメインと一致しているか
  • SPF / DKIM / DMARC の設定に問題がないか
  • 迷惑メールフォルダに入っていないか
  • reCAPTCHAのSite Key / Secret Keyが正しいか
  • サーバーのエラーログにPHPエラーが出ていないか

よくあるカスタマイズ(高度な設定)

📍 郵便番号からの「住所自動入力」を実装するには?

本ツールはコードを極力シンプルに保つため標準搭載していませんが、「YubinBango」ライブラリ等を使えば生成後のHTMLに少し追記するだけで簡単に実装できます。

  1. index.php<head> 内に以下を追記:
    <script src="https://yubinbango.github.io/yubinbango/yubinbango.js" charset="UTF-8"></script>
  2. <form> タグの class に h-adr を追加し、そのすぐ下に <span class="p-country-name" style="display:none;">Japan</span> を配置。
  3. 郵便番号の <input> の class に p-postal-code を追加。
  4. 住所の <input> の class に p-region p-locality p-street-address p-extended-address を追加。
💡 隠しフィールド(hidden)を追加したい場合

広告のCVパラメーターや、どのページからのお問い合わせかを判定する値をメールに含めたい場合は、書き出された index.php<form> タグの中に直接追記してください。
<input type="hidden" name="流入経路" value="Google広告">
※本ツールのPHP(send.php)は、新しく追加された項目を自動で認識してメール本文に含める仕様になっています。

一部の機能(ファイル添付など)を除外している理由

本ツールでは、ファイル添付(type="file"の機能をあえて除外しています。
ファイルアップロードは、容量制限、拡張子制限、ウイルス対策、保存先の権限管理などが必要で、セキュリティ事故につながりやすいため除外しています。

また、numbercolor 等の特殊なタイプも、お問い合わせフォームでの使用頻度が低いためUIから省いています(必要であれば出力後の index.php で直接 type="number" 等に書き換えてください)。

❓ PHPメールフォーム作成に関するよくある質問

Q. 生成されるファイルは何ですか?

入力フォームの index.php、確認画面の confirm.php、送信処理の send.php、完了画面の complete.php、設定ファイルの mailconfig.php、CSRFトークン用の _token.php、フォーム用の style.css を生成します。確認画面を使わない設定にした場合は、confirm.php を使わない構成になります。

Q. サーバーにアップロードするだけで使えますか?

PHPが使えるサーバーであれば、生成ファイルをアップロードして動作確認できます。ただし、サーバーのメール送信設定、Fromメールアドレス、迷惑メール判定、reCAPTCHA設定などにより動作が変わるため、公開前に必ず送信テストを行ってください。

Q. PHPが使えないサーバーでも動きますか?

動きません。このツールで生成するメールフォームはPHPの mb_send_mail() を利用します。静的ホスティングやPHP非対応サーバーでは利用できません。

Q. Gmail宛にメールが届かない場合はどうすればいいですか?

迷惑メールフォルダ、Fromメールアドレス、SPF / DKIM / DMARC、サーバーのメール送信制限を確認してください。送信元メールアドレスは、フォームを設置するドメインと同じドメインのアドレスを使うことをおすすめします。

Q. 自動返信メールは使えますか?

はい。自動返信メールを有効にすると、ユーザーのメールアドレス宛に受付完了メールを送る設定を生成できます。件名、送信者名、本文、署名を編集できます。

Q. reCAPTCHA v3は必須ですか?

必須ではありません。未設定でもハニーポットによる簡易的なスパム対策は入ります。ただし、公開フォームでスパムが多い場合は、reCAPTCHA v3の導入を検討してください。

Q. ファイル添付フォームは作れますか?

このツールではファイル添付には対応していません。ファイルアップロードは、容量制限、拡張子制限、ウイルス対策、保存先の権限管理などが必要で、セキュリティ事故につながりやすいため除外しています。

Q. 生成したフォームをそのまま本番利用できますか?

基本的な問い合わせフォームのひな形として利用できます。ただし、本番公開前には送信テスト、迷惑メール確認、入力値の確認、reCAPTCHA設定、サーバーログ確認を行ってください。必要に応じて、サイトの運用ルールに合わせた追加のバリデーションやスパム対策も検討してください。