HikoPro Blog

IT・テクノロジーで生活と仕事をもっと豊かに

【PHP工房】テンプレートを使用してお問合わせフォームを作る方法

約8分
About|HikoPro

About|HikoPro

1998年生まれ|ITライフクリエイター
Webクリエイター|YouTuber|Blogger

学生時代は、タイピングのテストでクラス最下位レベルのパソコン音痴。
もっと自分の市場価値を高めたいと思い、、、
▷バンコク不動産▷インドIT留学▷ベトナムIT企業エンジニアを経て
Web系のフリーランスとして独立。

その後もっと大きい市場でインパクトのあることをしたいと思い、
ITメガベンチャーに就職。

#GoProAwards受賞 #14ヵ国渡航 #Z大学創業者 #ネコ好き

YouTube

I make videos of computer hack information and useful applications that
enrich people's work and life.


PC Hack

Web Create

Life Style

【PHP工房】テンプレートを使用してお問合わせフォームを作る方法
HikoPro
HikoPro

こんにちは!大学生クリエイターでWebライター|エンジニア|YouTuberとして活動していますHikoProです! 最近は「若者のチャレンジを後押しするメディア」Z大学の編集長をしています!

  • HTML,CSSで作ったページにサクッとPHPでお問合わせフォームを作りたい!
  • お問合わせフォームのテンプレートPHPファイルとかあれば、それを使って簡単に実装したい!やり方を教えて!

今回の記事では、プログラミング初心者の方に向けて、HTML,CSSで出来たページにPHPでお問合わせフォームを作る方法をご紹介します。

お問合わせフォームのシステムをPHPで一からコーディングするとなると、かなり手間で時間がかかるので、オススメなのはテンプレートファイルをカスタマイズして使用する方法です。

実際の実務案件でも、お問合わせフォームを一からコーディングすることはほとんどなく予めあるテンプレートを使用し、必要な部分は追加したり、省いたりして使用します。

✔︎こんな方にオススメ

  • PHPの知識はあまりないが、お問合わせフォームをサックと作りたい方
  • HTML,CSSのページにお問合わせフォームを設置したい方
  • ほぼコピペでPHPのお問合わせフォームを作りたい方

今回はPHP工房さんのMailForm01のテンプレートを使って解説していきます!

お問合わせフォームをテンプレートで作るメリット

まず、PHPを自分でコーディングしてお問合わせフォームを作るべきと思っている方も多いかと思いますが、初心者の方がPHPを書いてお問合わせフォームを作ると様々なデメリットがあります。

  • セキュリティー対策が出来ない
  • そもそもコーディングの量が多い
  • PHPの知識が相当ないと作れない(実務用)

お問合わせフォームというのは個人の情報を扱うものなので、しっかりとセキュリティー対策をしなければなりません。

ただ、勉強のためや趣味で作る分にはいいですが、仕事となると、セキュリティーやメンテナンスする際のコードの見やすさが命です。

✔︎PHP工房のお問合わせフォームのメリット

  • 完全無料で使用できる
  • 設置の容易がトップレベル
  • 商用使用OK
  • 著作権リンク表記無しで運用可能
  • フォームで送信されたデータをすべて自動で取得、送信
  • name属性の値は日本語OK
  • 使うファイルはたったの1つ
  • 自動返信メール付き(管理者・送信者)
  • 確認画面・送信完了画面付き
  • 基本どのレンタルサーバーでも動く

→ 詳しくはこちら

→ デモサイトはこちら

いかがですか??

こんな素晴らしくて便利なテンプレート使わずには勿体無いです!

「テンプレートは甘えだ!コードを書け!」とかいう人もいますが、ぶっちゃけ効率悪いです。

仕事となると、早く納品すればするほど時給が高くなるのでどんどん使ってもいいと思います!

Hiko
Hiko

僕も実務ではほぼPHPのテンプレートを使って実装しています!

PHP工房のテンプレート使い方

では早速PHP工房さんの神お問合わせフォームテンプレートを使ってHTML,CSSで出来たページ にお問合わせフォームを設置していきましょう!

(※ローカルでは動きません。本番環境にアップしましょう)

✔︎準備するもの

  • 本番環境(サーバー&ドメイン)
  • HTMLファイル
  • テンプレートファイル
  • 自動返信メールを受け取るメールアドレス

1.PHP工房テンプレートファイルをダウンロード

まず始めにPHPのお問合わせフォームのテンプレートをPHP工房からダウンロードします。

https://www.php-factory.net/mail/01.php

下の方にスクロールすると、3つダウンロードできるファイルがありますが、特殊な場合以外おそらく「UTF-8」の文字コードを使うのが一般的なので、1番下の「メールフォーム UTF-8版」をクリックしてダウンロードしましょう!

2.ダウンロードファイルを解凍&確認する

ダウンロード府が完了すると、Zipファイルで保存されているので、Zipを解凍して開いてみましょう!

  • contact.html:お問合わせフォームの見た目を作るファイル
  • mail.php:お問合わせフォームのシステムを作るファイル

contact.htmlとmail.phpのこの2つのファイルがありますが、もうすでにHTML,CSSでお問合わせフォームの見た目を作っている場合はそれを使用してOKです!

3.htmlファイルを編集する

次にお問合わせフォームの見た目を作っているHTMLファイルを編集していきます!

※htmlファイルはテンプレートファイル、自身でコーディングしたものどちらでもOK

  • <form action=”mail.php” method=”POST”>とする
  • name属性は日本語でもOK
  • checkboxのname属性は「 name=”ご依頼内容[]” 」のように書く  

PHP工房のcontact.htmlをそのまま使う場合は問題ないですが、自分のhtmlファイルを使う場合は上記の点に注意してください。

3つの例をまとめるとこのようになります。

<form action="mail.php" method="POST">
<input type="text" name="お名前">
<input type="mail" name="Email">
<input type="checkbox" name="会社員[]">
<input type="submit" value="送信">
</fonm>

4. mail.phpを編集する

おそらくPHP初心者の方がここが、難しいかと思いますので、最低限変更するべき点を一気にご紹介します。

33行目

$site_top = "サイトTOPのURL";

ここにサイトのTOPページのURLを入力すると、完了画面の「トップページへ戻る」ボタンとリンクします。

36行目

$to = "管理者のメールアドレス";

「お問合わせフォームからお問合わせがありました!」のようなお知らせメールの宛先を指定します。複数に送りたい場合は「,」カンマで区切ります。

40行目

$from = "送信者に送るメールの送信元メールアドレス";

ユーザーに対して確認メールが自動的に送信されるのですが、その送信元のメールアドレスをここに書きます。

ユーザーを混乱させないようになるべく、サイトや会社名が含まれたメールアドレスを使用しましょう。

43行目 (重要)

$Email = "Email";

これはユーザーが入力したメールアドレスを受け取るコードです。

.htmlファイルの メールアドレスを入力するinputタグのname属性の値をここに書きます。

<input type="mail" name="Email">

95行目

$require = array('必須項目にしたいnameを書く');

名前やEmailなどお問合わせフォームで必須項目にしたい項目のnameをここに書きます。

ここに記述すると、必須項目が入力されていない場合、確認画面でエラー表示がされます。

104行目

$remail = 0;

ユーザーにお問合わせ完了自動メールを送るかどうかを変更することができます。

  • 0 → 送らない
  • 1 → 送る

お問合わせが完了した後は、基本的に自動返信メールは設定しておくのがベターです。

ユーザーが本当に送れているのかな?と不安にならないためにも設定しておきましょう。

106~146行目(104で1を選択した場合のみ)

$refrom_name = "送信者名";

ここには自動返信メールの送信者名を記入しましょう。

会社名にするといいですね!

$re_subject = "メールの件名";

ここにはメールの件名を記入します。

「お問合わせ頂きありがとうございます」がベーシックです。

$dsp_name = '名前入力欄のname属性';

次に、自動返信メールの冒頭に、「〇〇様」とユーザーの名前を表示されるコードです。

.htmlファイルの名前入力欄のnameの値を書くようにしましょう。

$remail_text = <<< TEXT

お問い合わせありがとうございました。
早急にご返信致しますので今しばらくお待ちください。

送信内容は以下になります。

TEXT;

次にメールの本文ですが、ここは自由記述でOKです。(日本語の部分を変更)

$mailFooterDsp = 0;

最後に自動返信メールにフッター(会社の署名)を表示するかどうか設定できます。

  • 0 → 表示しない
  • 1 → 表示する(下のテキストを変更)

256~340行目

ここでは、入力確認画面のカスタマイズをすることができます。

HTML,CSSの知識がある方は簡単にカスタマイズできるかと思います。

<?php?>で囲まれたコードは触らないようにしてください。

351~380行目

ここでは送信完了画面のカスタマイズをすることができます。

PHP工房 お問い合わせフォームテンプレート まとめ

ネコ君
ネコ君

PHPでお問い合わせフォームを作るのはハードルが高いけど、テンプレートを使えば簡単だね!

いかがでしたでしょうか!

僕自身も0からコーディングしてPHPのお問い合わせフォームを作ったことがありますが、工数や時間もかかりますし、セキュリティーも100%とは言えないので、よっぽどPHPに自信がない方はPHP工房さんのようなテンプレートを使うことをオススメします!

最後までご覧いただきありがとうございました!

Leave A Reply

*
*
* (公開されません)

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)