Copicode 日本語トップ

ロリポップで問い合わせフォームの内容をMySQLに保存する前に考えること

問い合わせフォームは、最初はメールで受け取れれば十分なことが多いです。ただ、件数が増えると「あとから検索したい」「対応済みか分からない」「迷惑投稿の傾向を見たい」と感じることがあります。

その時に考えるのが、問い合わせ内容をMySQLへ保存する方法です。ただし、フォーム内容には名前、メールアドレス、本文などの個人情報が含まれることがあります。保存する前に、何を残すか、誰が見るか、どう消すかを決めておく必要があります。

確認日と対象

確認日: 2026年5月19日。ロリポップで自作PHPメールフォームを運用していて、メール送信に加えてMySQL保存や管理画面化を検討している初心者向けです。

この記事は、法律相談や高度な個人情報管理の設計ではありません。まず小さなサイトで「本当にDB保存が必要か」「保存するなら何を決めるか」を整理するための入口です。

先に結論

問い合わせ内容をMySQLに保存する前に、次の順番で決めます。

  1. メールだけで足りるか、DB保存が必要かを分ける
  2. 保存する項目と保存しない項目を決める
  3. スパムや重複投稿を保存前に減らす
  4. DB接続情報をGitHubやAIへ貼らない形にする
  5. 保存後に誰が見て、いつ削除するかを決める
  6. バックアップと復元方法を決めてから実装する

メールだけで足りるケース

問い合わせ件数が少なく、受信箱で管理できるなら、無理にMySQL保存を始めなくても構いません。

MySQL保存を検討するケース

やりたいことMySQLが役立つ理由注意点
対応済み・未対応を分けるステータスを保存できる管理画面のログイン保護が必要
問い合わせ履歴を検索する名前、日付、内容で絞り込める保存期間を決める
送信できたか確認するメール送信とは別に受付記録を残せるメール失敗時の扱いを決める
スパム傾向を見るIP、URL数、送信時刻を比較できる必要以上に個人情報を残さない

保存する項目を先に決める

フォーム入力を丸ごと保存するより、目的に必要な項目だけに絞る方が安全です。

項目保存する目的注意
送信日時問い合わせの発生時刻を見るタイムゾーンをそろえる
名前返信や対応履歴に使う不要なら保存しない選択もある
メールアドレス返信先として使う表示できる人を絞る
本文問い合わせ内容を確認する長文や個人情報の扱いに注意する
IP、User-Agent連投やスパム傾向を見る公開画面に出さない
対応ステータス未対応、対応中、完了を分ける管理画面の設計が必要

保存前にスパムを減らす

スパム投稿をそのままDBへ保存すると、管理しにくくなります。メール送信前、DB保存前の両方で対策を考えます。

Turnstileを入れる場合は、HTMLに表示するだけではなく、PHP側でトークン検証してから送信や保存へ進む形にします。

DB接続情報を分ける

問い合わせ保存を始めると、DBホスト名、DB名、ユーザー名、パスワードが必要になります。これらをフォーム処理のPHPへ直接書くと、GitHubやAI相談時に漏れやすくなります。

接続情報は、PHPのDB設定を安全に分ける方法を参考に、GitHubへ上げるファイルとサーバーだけに置く秘密ファイルを分けてください。

実装前の確認順

順番見ること進む記事
1フォームメールが正しく送信できるかPHPメールフォーム確認
2送信できたかログで追えるか送信ログの確認
3スパム対策を入れるかTurnstile確認
4MySQLへ接続できるかMySQL接続エラー確認
5PDOで安全に保存するかPDO接続の基本

AIに相談する時のメモ

AIに相談する時は、実際のDBパスワードや問い合わせ本文を貼らず、保存したい項目と目的だけを伝えます。

ロリポップのPHP問い合わせフォームについて相談します。
メール送信に加えて、MySQLにも受付記録を保存するか検討しています。

現在の状態:
例: PHPフォームでメール送信している / Turnstileは未導入 / MySQLは使えるプラン

保存したい理由:
例: 対応済み管理 / 履歴検索 / 送信ログ / スパム傾向確認

保存したい項目:
例: 送信日時、名前、メールアドレス、本文、対応ステータス

保存しない方がよさそうな項目:
例: 不要な個人情報、添付ファイル、管理者だけが知る情報

確認したいこと:
1. メールだけで足りるか
2. MySQL保存するなら先に決める項目
3. スパム対策と保存順
4. DB接続情報を安全に分ける方法
5. 管理画面や削除方法をどう考えるか

DBパスワード、管理画面URL、実際の問い合わせ本文、個人情報は伏せています。

次に読む記事