PHPで返信メールにチェックボックスの値を表示したいのですが。。。
PHP初心者です。
request.phpという資料請求用のWEBページを作成しており、お問い合わせ項目内に
以下の様なチェックボックスを設けました。
<tr>
<th>ご希望される商品</th>
<td>
<input type="checkbox" name="kibo[]" value="a-set" /> Aセット<br />
<input type="checkbox" name="kibo[]" value="b-set" /> Bセット<br />
<input type="checkbox" name="kibo[]" value="c-set" /> Cセット<br />
<input type="checkbox" name="kibo[]" value="d-set" /> Dセット
</td>
</tr>
入力後の内容確認画面では、
<tr>
<th>ご希望される商品:</th>
<td class="subheader_txt_l"><?php echo implode(' / ', $_POST['kibo']);?></td>
</tr>
として、選択した項目が表示されるところまではできましたが、送信ボタン後、確認メールが
送られてくる仕組になっているのですが、メール本文内では【ご希望される商品】欄が空っぽで
返ってきます。。。
ちなみにメール本文作成の処理では、
$body .=
'【氏名】 '.$_POST['name1']."\n".
'【メールアドレス】 '.$_POST['mail']."\n".
'【住所】 '.$_POST['zyuusyo']."\n".
'【ご希望される項目】 '.$_POST['kibo']."\n".
'【お問い合わせ内容】 '.$_POST['comment']."\n\n".
値取得にあたり特別な関数が必要なのでしょうか。
ご教授頂けますと幸いです。よろしくお願いします。
No.3ベストアンサー
- 回答日時:
まったく何も表示されないならばNo.2の方が言うように値の受け渡しができていないのでしょう。
入力画面-(1)->確認画面-(2)->メール処理とすると
ありがちなのは(2)の部分でデータがPOSTされていないということです。
(1)でPOSTされたデータは特に何もしなければ(2)で再度ポストされることはないです。
(2)で入力画面の入力値を再度POSTするためにはhiddenで値を設定すればよいです。
<tr>
<th>ご希望される商品:</th>
<td class="subheader_txt_l"><?php echo implode(' / ', $_POST['kibo']);?></td>
<input type="hidden" name="kibo" value="<?php echo implode(' / ', $_POST['kibo']);?>" />
</tr>
↑のようにしておくとメール処理では$_POST['kibo']に連結された状態で値がセットされると思います。
氏名とかはメール処理で入ってくるとしたらちょっと不可解ですが確認画面でechoで出力したのではなくテキストフィールドをreadonlyにして表示したのならありかな?とも思います。
POSTはちゃんとやってるはずだよ、というならば正しくPOSTできていないことが考えられます。
(2)でPOSTしたときにnameが'kibo'になってなかったりするかもしれません。
またformの中に入ってないのかもしれません。その辺は確認画面のソース(phpじゃなくてhtmlとして出力されたもの)を表示してみて正しく確認画面が作られているか確認してください。
それでもダメだったら・・・文字コード関係かもしれません。
メール送信処理で、メールを送る直前($bodyの内容が確定した時点)でprint等でブラウザに出力させてみてください。
>duron 様
ご丁寧にありがとうございます!
できました!!
duron様のおっしゃる確認画面段階での受け渡し時に
<input type="hidden" name="kibo[]" value="<?php print(implode(' / ', $_POST['kibo']));?>">
としたら、できました!
ありがとうございます。
No.4
- 回答日時:
> ですが、「Array」すら表示されず、【ご希望される項目】のみが表示されております。
。。いや、うん、だから。。。^^;
『内容確認画面からメール本文作成処理へ受け渡しが出来ているかご確認ください。』
「内容確認画面」から「メール本文作成処理」へhiddenとかで受け渡しているのだと思ったのですが、それは ちゃんと受け渡せていますか?って事だったのですが^^;
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- HTML・CSS 私の能力からして間違っていないような気がします。 4 2022/09/30 13:24
- HTML・CSS ただいま勉強始めたての初心者です。フォームを縦並べにしたいです。 2 2022/11/20 17:18
- PHP $_SESSIONについて教えて下さい。 2 2023/03/02 09:18
- PHP PHPでユーザー情報を入力して簡易ログイン機能をつくってみたのですが 1 2023/05/29 08:51
- PHP htmlで複数の個数入力欄を表示させるには 1 2022/09/20 03:11
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・【選手権お題その3】この画像で一言【大喜利】
- ・【お題】逆襲の桃太郎
- ・自分独自の健康法はある?
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・ちょっと先の未来クイズ第6問
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
POSTで受け渡したものを保存し...
-
「ページネーション」で検索キ...
-
ログイン画面から入って、「戻...
-
php 入力画面から確認表示画面...
-
PHPでのメールフォームについて
-
Dosブロンプトでtabを出力したい
-
バッチファイルでpingの結果を...
-
VBA コレクションに2次元配列...
-
shシェルスクリプト 空白行の...
-
エクセルVBAにて同行内複数URL...
-
「取得先」という表現について
-
PHPでの接続数の取得について
-
ps3で久しぶりにCDの音楽情報取...
-
オブジェクトの中身の判定(PHP)
-
DTOとEntityの差は何ですか。
-
VBScriptでのWEBページのソース...
-
Yahoo! JAPAN IDを新規取得でき...
-
ImmGetConversionListについて
-
xxxx.mdb からデータを取り出...
-
ログイン画面をはさんだ後、自...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
POSTで受け渡したものを保存し...
-
PHPで値を保持する方法
-
閉じるボタン「×」を制御したい
-
ログイン画面から入って、「戻...
-
「ページネーション」で検索キ...
-
IFRAME内PHPのセッション変数取...
-
cURL関数を使用したphpからのpo...
-
ブラウザバックしてもチェック...
-
php に関して質問です。 各ユー...
-
会員登録システム 仮登録のメ...
-
HTMLエスケープすべき場所につ...
-
VBAで重複チェックの仕方を教え...
-
php 入力画面から確認表示画面...
-
フォームを使わずにPOST送信す...
-
飛び先のランダムURLの取得方法...
-
HTMLフォームのデータ引き継ぎ...
-
セッションを使用したページ遷移
-
php history.back()の戻るボタ...
-
【Java】投稿完了画面リロード...
-
PHPで返信メールにチェックボッ...
おすすめ情報