2分でできる!世界一簡単なPHPコンタクトフォームの作り方

SHARE

2分でできる!世界一簡単なPHPコンタクトフォームの作り方

お久しぶりです。世界のヘイショーです。本日はWeb制作について、メモしておきたい内容があったのでここに書き留めたいと思います。

それは、シンプルなPHP問い合わせフォームの作り方について。

今まではWordPressなどのCMSを使ってホームページを作ることが多かったのでシンプルなHTMLのサイトに問い合わせフォームを導入する機会がなかったのですが、先日自分のホームページを作る際に問い合わせフォームが必要になったので、色々と調べてみました。

出来るだけシンプルなものを探してみた

探していたコンタクトフォームはこんな感じ。

  • 入力項目は名前、E-mail、メッセージの3点
  • それぞれの項目が未入力の場合は、エラーメッセージを表示させる
  • 送信後は、サンキューページ(別のページ)に移動させる

以上の3点のみだったので、自分でも内容が理解できる簡単なPHPフォームが無いかな〜、と探していたところ、PHPファイル一枚、たったの26行のコードで構成される簡単なものが見つかりました。

デモはこちら

 

コーディングはこんな感じ

PHPファイル(mail.php)

コード
<?php
$field_name = $_POST['name'];
$field_email = $_POST['email'];
$field_message = $_POST['message'];
$mail_to = 'test@gmail.com(**送信先のメールアドレスを入力)';
$subject = 'Message from a site visitor '.$field_name;
$body_message = 'From: '.$field_name."\n";
$body_message .= 'E-mail: '.$field_email."\n";
$body_message .= 'Message: '.$field_message;
$headers = 'From: '.$field_email."\r\n";
$headers .= 'Reply-To: '.$field_email."\r\n";
$mail_status = mail($mail_to, $subject, $body_message, $headers);
if ($mail_status) { ?>
    <script language="javascript" type="text/javascript">
        window.location = 'thanks.html#contact(※送信後に移動するページ)';
    </script>
<?php
}
else { ?>
    <script language="javascript" type="text/javascript">
        alert('メッセージ送信に失敗しました。こちらのメールアドレスへお問い合わせください。test@gmail.com(※自分のメールアドレス)');
        window.location = 'index.html(※送信失敗後に移動するページ)';
    </script>
<?php
}
?>

※5行目の「test@gmail.com(**送信先のメールアドレスを入力)」を自分のメールアドレスに変更、15行目の’thanks.html#contact(※送信後に移動するページ)’の箇所を送信後に移動させたいページのパスに変更ください。

 

HTMLファイル中のフォーム要素

コード
<form role="form" action="mail.php" method="post">
<div class="form-group">
<label for="exampleInputName1">Your Name</label>
<input type="text" class="form-control" id="exampleInputName1" placeholder="Enter name" name="name" required>
<label for="exampleInputEmail1">Email address</label>
<input type="email" class="form-control" id="exampleInputEmail1" placeholder="Enter email" name="email" required>
<label for="exampleInputText1">Message</label>
<textarea class="form-control" rows="3" name="message" required></textarea>
</div>
<button type="submit" value="SEND MESSAGE" class="btn btn-default">Submit</button>
</form>

inputの要素内にある「required」のタグがエラーメッセージを表示させます。あとは、サンキューページを作って「お問い合わせありがとうございました」と表示させておけばOKです!簡単でしょ??

以上、世界一簡単はPHPコンタクトフォームを作る方法についてでした!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です