トップページ  > ウェブ制作チュートリアル  > メール送信フォームのソース全文
【番外編】 第30章 PHPでメール送信フォームを作る

★メール送信フォームのソース全文

メール送信フォームのソース全文

広告

「第30章 PHPでメール送信フォームを作る」で作成してきた メール送信フォームサンプル のソース全文です。

このメール送信フォームは、 お問合せ内容の入力ページ(index.php)、 入力内容の確認ページ(confirm.php)、 メール送信完了ページ(mailpost.php)の3ページで作成されています。

※動作保証やセキュリティ保証は致しかねます。
※利用される場合には自己責任でお願いします。

お問合せ内容の入力ページ(index.php)

サンプルソース:index.php
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>お問合せ内容の入力|メール送信フォーム</title> </head> <body> <?php /******************************* 確認ページから戻ってきた場合のデータの受け取り *******************************/ if (isset($_POST["backbtn"])) { //確認ページ(confirm.php)から戻ってきた場合にはデータを受け取る $namae = $_POST["namae"]; //お名前 $mailaddress = $_POST["mailaddress"]; //メールアドレス $naiyou = $_POST["naiyou"]; //お問合せ内容 //危険な文字列を入力された場合にそのまま利用しない対策 $namae = htmlspecialchars($namae, ENT_QUOTES); $mailaddress = htmlspecialchars($mailaddress, ENT_QUOTES); $naiyou = htmlspecialchars($naiyou, ENT_QUOTES); } else { //確認ページから戻ってきた場合でなければ、変数の値は必ず空となる $namae = ''; //お名前 $mailaddress = ''; //メールアドレス $naiyou = ''; //お問合せ内容 } ?> <form method="post" action="confirm.php"> <p><label>お名前:<br> <input type="text" maxlength="255" name="namae" value="<?=$namae?>"> </label></p> <p><label>メールアドレス:<br> <input type="email" size="30" maxlength="255" name="mailaddress" value="<?=$mailaddress?>"> </label></p> <p><label>お問合せ内容:<br> <textarea name="naiyou" cols="40" rows="5"><?=$naiyou?></textarea> </label></p> <p><input type="submit" value="入力内容を確認する"></p> </form> </body> </html>

入力内容の確認ページ(confirm.php)

サンプルソース:confirm.php
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>入力内容の確認|メール送信フォーム</title> </head> <body> <?php /******************************* データの受け取り *******************************/ $namae = $_POST["namae"]; //お名前 $mailaddress = $_POST["mailaddress"]; //メールアドレス $naiyou = $_POST["naiyou"]; //お問合せ内容 //危険な文字列を入力された場合にそのまま利用しない対策 $namae = htmlspecialchars($namae, ENT_QUOTES); $mailaddress = htmlspecialchars($mailaddress, ENT_QUOTES); $naiyou = htmlspecialchars($naiyou, ENT_QUOTES); /******************************* 未入力チェック *******************************/ $errmsg = ''; //エラーメッセージを空にしておく if ($namae == '') { $errmsg = $errmsg.'<p>お名前が入力されていません。</p>'; } if ($mailaddress == '') { $errmsg = $errmsg.'<p>メールアドレスが入力されていません。</p>'; } if ($naiyou == '') { $errmsg = $errmsg.'<p>お問合せ内容が入力されていません。</p>'; } /******************************* 入力内容の確認 *******************************/ if ($errmsg != '') { //エラーメッセージが空ではない場合には、エラーメッセージを表示する echo $errmsg; //[前のページへ戻る]ボタンを表示する echo '<form method="post" action="index.php">'; echo '<input type="hidden" name="namae" value="'.$namae.'">'; echo '<input type="hidden" name="mailaddress" value="'.$mailaddress.'">'; echo '<input type="hidden" name="naiyou" value="'.$naiyou.'">'; echo '<input type="submit" name="backbtn" value="前のページへ戻る">'; echo '</form>'; } else { //エラーメッセージが空の場合には、入力された内容を画面表示する echo '<h3>入力内容を確認します</h3>'; echo '<dl>'; echo '<dt>【お名前】</dt><dd>'.$namae.'</dd>'; echo '<dt>【メールアドレス】</dt><dd>'.$mailaddress.'</dd>'; echo '<dt>【お問合せ内容】</dt><dd>'.nl2br($naiyou).'</dd>'; echo '</dl>'; //[上記内容で送信する]ボタンを表示する echo '<form method="post" action="mailpost.php">'; echo '<input type="hidden" name="namae" value="'.$namae.'">'; echo '<input type="hidden" name="mailaddress" value="'.$mailaddress.'">'; echo '<input type="hidden" name="naiyou" value="'.$naiyou.'">'; echo '<input type="submit" name="okbtn" value="上記内容で送信する">'; echo '</form>'; } ?> </body> </html>

メール送信完了ページ(mailpost.php)

サンプルソース:mailpost.php
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>メール送信完了|メール送信フォーム</title> </head> <body> <?php /******************************* データの受け取り *******************************/ $namae = $_POST["namae"]; //お名前 $mailaddress = $_POST["mailaddress"]; //メールアドレス $naiyou = $_POST["naiyou"]; //お問合せ内容 //危険な文字列を入力された場合にそのまま利用しない対策 $namae = htmlspecialchars($namae, ENT_QUOTES); $mailaddress = htmlspecialchars($mailaddress, ENT_QUOTES); $naiyou = htmlspecialchars($naiyou, ENT_QUOTES); /******************************* 未入力チェック *******************************/ $errmsg = ''; //エラーメッセージを空にしておく if ($namae == '') { $errmsg = $errmsg.'<p>お名前が入力されていません。</p>'; } if ($mailaddress == '') { $errmsg = $errmsg.'<p>メールアドレスが入力されていません。</p>'; } if ($naiyou == '') { $errmsg = $errmsg.'<p>お問合せ内容が入力されていません。</p>'; } /******************************* メール送信の実行 *******************************/ if ($errmsg != '') { //エラーメッセージが空ではない場合には、[前のページへ戻る]ボタンを表示する echo $errmsg; //[前のページへ戻る]ボタンを表示する echo '<form method="post" action="index.php">'; echo '<input type="hidden" name="namae" value="'.$namae.'">'; echo '<input type="hidden" name="mailaddress" value="'.$mailaddress.'">'; echo '<input type="hidden" name="naiyou" value="'.$naiyou.'">'; echo '<input type="submit" name="backbtn" value="前のページへ戻る">'; echo '</form>'; } else { //エラーメッセージが空の場合には、メール送信処理を実行する //メール本文の作成 $honbun = ""; $honbun .= "メールフォームよりお問い合わせがありました。\n\n"; $honbun .= "【お名前】\n"; $honbun .= $namae."\n\n"; $honbun .= "【メールアドレス】\n"; $honbun .= $mailaddress."\n\n"; $honbun .= "【お問い合わせ内容】\n"; $honbun .= $naiyou."\n\n"; //エンコード処理 mb_language("Japanese"); mb_internal_encoding("UTF-8"); //メールの作成 $mail_to = "●●●●●●●"; //送信先メールアドレス $mail_subject = "メールフォームよりお問い合わせ"; //メールの件名 $mail_body = $honbun; //メールの本文 $mail_header = "from:".$mailaddress; //送信元として表示されるメールアドレス //メール送信処理 $mailsousin = mb_send_mail($mail_to, $mail_subject, $mail_body, $mail_header); //メール送信結果 if($mailsousin == true) { echo '<p>お問い合わせメールを送信しました。</p>'; } else { echo '<p>メール送信でエラーが発生しました。</p>'; } } ?> </body> </html>

※上記ソース中の●●●●●●●の部分は、ご自分のメールアドレスに書き換えてください。

<前へ 目次へ 次へ>
広告
Sponsors
広告
MuuMuu Domain!
ドメイン取るならお名前.com
現役エンジニアのオンライン家庭教師【CodeCamp】
サイトに広告を掲載してお小遣いが稼げる!【A8.net】
Node.jsコース
はじめてのプログラミングコース
▲ページ先頭へ
HTMLクイックリファレンスについて
© HTMQ