質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

解決済

問い合わせフォーム 完了通知メールに入力内容が入らない

削除済ユーザー
削除済ユーザー

総合スコア0

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

2回答

0評価

0クリップ

5閲覧

投稿2018/12/10 07:38

編集2022/01/12 10:58

入力ページと確認ページと完了ページを下記サイトを参考に作成しているのですが、
確認ページ後送信ボタンを押すと完了ページが上手く表示されずにメールも届くのですが、中身の入力した項目内容が入っていない状態で届きます。
https://designsupply-web.com/knowledgeside/1644/

入力ぺージ

php

<form id="mail-form" action="./confirm.php" method="post"> <dl> <dt>会社名<span class="hissu">必須</span></dt> <dd> <input type="text" class="validate required" id="company" name="company" value="" placeholder="株式会社〇〇〇"> <span class="error_required"></span> <span class="error_company"></span> </dd> </dl> <dl> <dt>住所</dt> <dd><input type="text" class="" id="address" name="address" value="" size="50"> <span class="error_required"></span> <span class="error_address"></span> </dd> </dl> <dl> <dt>ご担当者 氏名<span class="hissu">必須</span></dt> <dd><input type="text" class="validate required" id="name" size="50" name="name" value="" placeholder="山田 花子"> <span class="error_required"></span> <span class="error_name"></span> </dd> </dl> <dl> <dt>電話番号<span class="hissu">必須</span></dt> <dd><input type="text" class="validate required tel" id="tel" size="50" name="tel" value="" size="14" maxlength="14" placeholder="091-123-4567"> <span class="error_tel"></span> </dd> </dl> <dl> <dt>メールアドレス<span class="hissu">必須</span></dt> <dd> <input type="text" value="" size="50" name="email" class="email validate required"/> </dd> </dl> <dl> <dt>お問い合わせ内容<span class="hissu">必須</span></dt> <dd><textarea id="message" class="validate required" name="message" value="" rows="5" cols="50"></textarea> <span class="error_required"></span> </dd> </dl> <button type="input-submit-check" id="input-submit-check" value="input-submit-check" name="input-submit-check">同意し、確認画面へ</button> </form>

確認ページ

php

<?php $postData = $_POST; $page_flag = 0; $error = array(); function formValidation($postData) { $error = array(); if(empty($postData['company'])) { $error[] = "会社名を入力してください"; } if(empty($postData['name'])) { $error[] = "お名前を入力してください"; } else if(!preg_match('/^[ぁ-んァ-ヶー一-龠  \r\n\t]+$/',$postData['name'])) { $error[] = "お名前は全角文字で入力してください"; } if(empty($postData['email'])) { $error[] = "メールアドレスを入力してください"; } else if(!preg_match('/^([a-zA-Z0-9])+([a-zA-Z0-9\._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-]+)+$/',$postData['email'])) { $error[] = "メールアドレスを正しく入力してください"; } if(empty($postData['tel'])) { $error[] = "電話番号を入力してください"; } else if(!preg_match('/^0\d{1,4}-\d{1,4}-\d{3,4}$/',$postData['tel'])) { $error[] = "電話番号を正しく入力してください"; } if(empty($postData['message'])) { $error[] = "問い合わせ内容を入力してください"; } else if(!preg_match('/^[ぁ-んァ-ヶー一-龠]+$/',$postData['message'])) { $error[] = "全角文字で入力してください"; } return $error; } $error = formValidation($postData); if(empty($postData['input-submit-check']) || !empty($error)) { $page_flag = 1; } else { $page_flag = 0; } ?> <form id="confirm" action="./send.php" method="post"> <input type="hidden" name="company" value="<?php echo $company; ?>"> <input type="hidden" name="address" value="<?php echo $address; ?>"> <input type="hidden" name="name" value="<?php echo $name; ?>"> <input type="hidden" name="email" value="<?php echo $email; ?>"> <input type="hidden" name="tel" value="<?php echo $tel; ?>"> <input type="hidden" name="message" value="<?php echo $message; ?>"> <?php if($page_flag == 1): ?> <ul class="error"> <?php foreach( $error as $value ): ?> <li><?php echo $value; ?> </li> <?php endforeach; ?> </ul> <?php endif; ?> <dl> <dt> <label>会社名</label> </dt> <dd><?php echo htmlspecialchars($_POST['company'], ENT_QUOTES, 'UTF-8'); ?></dd> </dl> <dl> <dt> <label>住所</label> </dt> <dd><?php echo htmlspecialchars($_POST['address'], ENT_QUOTES, 'UTF-8'); ?></dd> </dl> <dl> <dt> <label>ご担当者 氏名</label> </dt> <dd><?php echo htmlspecialchars($_POST['name'], ENT_QUOTES, 'UTF-8'); ?></dd> </dl> <dl> <dt> <label>電話番号</label> </dt> <dd><?php echo htmlspecialchars($_POST['tel'], ENT_QUOTES, 'UTF-8'); ?></dd> </dl> <dl> <dt> <label>メールアドレス</label> </dt> <dd><?php echo htmlspecialchars($_POST['email'], ENT_QUOTES, 'UTF-8'); ?></dd> </dl> <dl> <dt> <label>お問い合わせ内容</label> </dt> <dd><?php echo htmlspecialchars($_POST['message'], ENT_QUOTES, 'UTF-8'); ?></dd> </dl> <div class="btnBlock"> <p class="btn02"><a class="button" value="内容を修正する" onclick="history.back(-1)"><span>内容を修正する</span></a></p> <?php if($page_flag == 0) { echo '<button type="submit" id="submit" name="submit">送信する</button>'; } ?> </div> </form>

完了ページ

php

<?php session_start(); if(!$_SESSION){ header('Location: ./input.php'); } $company = $postData["company"]; $department = $postData["department"]; $name = $postData["name"]; $email = $postData["email"]; $tel = $postData["tel"]; $message = $postData["message"]; $add_header ="From:info@\n"; $add_header .= "Reply-to: info@\n"; $add_header .= "X-Mailer: PHP/". phpversion(); //自動返信メール本文 $messageuser = sprintf("%s",$name); $messageuser .= " 様\n\n"; $messageuser .= "この度はお問い合わせいただき誠にありがとうございます。\n\n"; $messageuser .= "下記の内容でお問い合わせを承りました。\n\n\n"; $messageuser .= "================================\n\n"; $messageuser .= sprintf("会社名:%s\n",$company); $messageuser .= sprintf("住所:%s\n",$address); $messageuser .= sprintf("お名前:%s\n",$name); $messageuser .= sprintf("メールアドレス:%s\n",$email); $messageuser .= sprintf("電話番号:%s\n",$tel); $messageuser .= sprintf("お問い合わせ内容:%s\n",$message); $messageuser .= "================================\n\n"; //管理者確認用メール本文 $messageadmin = "フォームより下記の内容でお問い合わせがありました。\n\n\n"; $messageadmin .= "================================\n\n"; $messageadmin .= sprintf("会社名:%s\n",$company); $messageadmin .= sprintf("住所:%s\n",$address); $messageadmin .= sprintf("お名前:%s\n",$name); $messageadmin .= sprintf("メールアドレス:%s\n",$email); $messageadmin .= sprintf("電話番号:%s\n",$tel); $messageadmin .= sprintf("お問い合わせ内容:%s\n",$message); $messageadmin .= "================================\n\n"; //メール設定 mb_language("ja"); mb_internal_encoding("UTF-8"); //自動返信メール送信設定 mb_send_mail($email,"お問い合わせありがとうございます",$messageuser,$add_header); //管理者確認用メール送信設定 mb_send_mail("info@","コンタクトフォームよりお問い合わせがありました",$messageadmin,$add_header); session_destroy(); ?>

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

kei344
kei344

2018/12/10 09:57

まだ質問が「受付中」になっていますが、「ベストアンサー」を選び「解決済」にされてはいかがでしょうか。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。