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

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

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

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

Q&A

解決済

1回答

1162閲覧

PHPで入力フォームの性別の欄が確認フォームに表示がされない。

masashitonomura

総合スコア1

PHP

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

0グッド

1クリップ

投稿2020/12/28 05:50

前提・実現したいこと

PHPでフォームに性別のチェックボックスでチェックして確認画面に表示したい。

発生している問題・エラーメッセージ

エラーメッセージ ```出てないですが、表示されない ### 該当のソースコード ```ここに言語名を入力 PHP ソースコード
<?php /** * Template Name: confirm-page * * */ function hsc($s) { if (is_array($s)) {//データが配列の場合 return array_map("hsc",$s); } else {//データが配列ではない場合 return htmlspecialchars($s, ENT_QUOTES|ENT_HTML5, "UTF-8"); } } if ($_SERVER["REQUEST_METHOD"] === "POST") { $surname = hsc($_POST["surname"]); $name2nd = hsc($_POST["name2nd"]); if (!empty($surname) and !empty($name2nd)): $fullName = $surname. " " .$name2nd; endif; $phoneticsurname = hsc($_POST["phoneticsurname"]); $phoneticname = hsc($_POST["phoneticname"]); if (!empty($phoneticsurname) && !empty($phoneticname)): $phonetic = $phoneticsurname. " " .$phoneticname; endif; $birthdayyear = hsc($_POST["birthdayyear"]); $birthdaymonth = hsc($_POST["birthdaymonth"]); $birthdayday = hsc($_POST["birthdayday"]); if (!empty($birthdayyear) && !empty($birthdaymonth) && !empty($birthdayday)): $birthday = $birthdayyear. "年 " .$birthdaymonth. "月 ".$birthdayday. "日"; endif; $age = hsc($_POST["age"]); $tel1 = hsc($_POST["tel1"]); $tel2 = hsc($_POST["tel2"]); $tel3 = hsc($_POST["tel3"]); if (!empty($tel1) && !empty($tel2) && !empty($tel3)): $telephone = $tel1. "-" .$tel2. "-".$tel3; endif; $mail1st = hsc($_POST["mail1st"]); $mailconfirm = hsc($_POST["mailconfirm"]); $zipcode1 = hsc($_POST["zipcode1"]); $zipcode2 = hsc($_POST["zipcode2"]); $prefecture = hsc($_POST["prefecture"]); $city = hsc($_POST["city"]); $area = hsc($_POST["area"]); $streetname = hsc($_POST["streetname"]); if (!empty($zipcode1) && !empty($zipcode2) && !empty($prefecture) && !empty($city) && !empty($area)): $address = $zipcode1. "-" .$zipcode2. " ".$prefecture.$city.$area.$streetname; endif; $participants = hsc($_POST["participants"]); if ($participants == "武蔵小金井:男性" ){ $venue = "武蔵小金井" ;$gender = "男性" ;} if ($participants == "武蔵小金井:女性" ){ $venue = "武蔵小金井" ;$gender = "女性" ;} if ($participants == "東小金井:男性" ){ $venue = "東小金井" ;$gender = "男性" ;} if ($participants == "東小金井:女性" ){ $venue = "東小金井" ;$gender = "女性" ;} if ($participants == "どちらでも可:男性" ){ $venue = "どちらでも可" ;$gender = "男性" ;} if ($participants == "どちらでも可:女性" ){ $venue = "どちらでも可" ;$gender = "女性" ;} $everyname = hsc($_POST["everyname"]); $introducername = hsc($_POST["introducername"]); $jobtype = hsc($_POST["jobtype"]); if (!empty($_POST["trigger"]) && is_array($_POST["trigger"])) { $trigger = hsc(implode("、", $_POST["trigger"]));} $trigger2 = hsc($_POST["trigger2"]); $message = hsc($_POST["message"]); } if (isset($_POST["submit"])) { $captcha; if(isset($_POST['g-recaptcha-response'])){ $captcha=$_POST['g-recaptcha-response']; } if(!$captcha){ echo '<p>申し訳ありませんが前の画面に戻って「reCAPTCHA」にチェックを入れて送信してください。</p>'; echo "<a href=\"javascript:history.go(-1)\">戻る</a>"; exit; } $response=file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=6Lebg60UAAAAAJW1NXYjFdZSbiQjvXks3rQ15d5l&response=".$captcha."&remoteip=".$_SERVER['REMOTE_ADDR']); mb_language("ja"); mb_internal_encoding("UTF-8"); $subject = "黄金井コン"; $body = <<< EOM {$fullName} 様 この度は第4回黄金井コンにエントリー頂き、誠にありがとうございました。 以下の内容で受け付けました。以下の内容にてお申込みいただきました。 ※一部の個人情報は ***** で伏せてあります。 =================================================== 【 お名前 】 {$fullName} 【 ふりがな 】 {$phonetic} 【 生年月日 】 {$birthday} 【 年齢 】 {$age} 【 メール 】 ***** 【 電話番号 】 ***** 【 住所 】 ***** 【 性別 】 {$gender} 【 会場 】 {$venue} 【 代表者様以外の参加者 】 {$everyname} 【 紹介者名 】 {$introducername} 【 職種 】 {$jobtype} 【 黄金井コンを知ったきっかけ 】 {$trigger2} 【 メッセージ 】 {$message} =================================================== EOM; $fromEmail = "koganekon@gmail.com"; $fromName = "黄金井コン"; $header = "From: " .mb_encode_mimeheader($fromName) ."<{$fromEmail}>"; $body = mb_convert_encoding($body,"ISO-2022-JP-MS","UTF-8");//①②③の文字化け対策 mb_send_mail($mail1st, $subject, $body, $header); $body2 = <<< EOM 「黄金井コン」フォームからデータ送信がありました。 ご確認ください。 =================================================== 【 お名前 】 {$fullName} 【 ふりがな 】 {$phonetic} 【 生年月日 】 {$birthday} 【 年齢 】 {$age} 【 メール 】 {$mail1st} 【 電話番号 】 {$telephone} 【 住所 】 {$address} 【 性別 】 {$gender} 【 会場 】 {$venue} 【 代表者様以外の参加者 】 {$everyname} 【 紹介者名 】 {$introducername} 【 職種 】 {$jobtype} 【 黄金井コンを知ったきっかけ 】 {$trigger2} 【 メッセージ 】 {$message} =================================================== EOM; $toMail = "koganekon@gmail.com"; $fromEmail = $mail1st; $fromName = "黄金井コン"; $header2 = "From: " .mb_encode_mimeheader($fromName) ."<{$fromEmail}>"; $body2 = mb_convert_encoding($body2,"ISO-2022-JP-MS","UTF-8");//①②③の文字化け対策 mb_send_mail($toMail, $subject, $body2, $header2); //参加者へのメール送信終了     ここにカスタム投稿自動生成 $post = array( 'post_title' => $fullName, 'post_type' => 'member-details', 'post_status' => 'private', ); $page_id = wp_insert_post( $post ); if($page_id) { update_post_meta($page_id, 'furigana', $phonetic ); update_post_meta($page_id, 'seinengappi', $birthday ); update_post_meta($page_id, 'nenrei', $age ); update_post_meta($page_id, 'denwabangou', $telephone ); update_post_meta($page_id, 'meilu', $mail1st ); update_post_meta($page_id, 'jushyo', $address ); update_post_meta($page_id, 'seibetu', $gender ); update_post_meta($page_id, 'kaijyou', $venue ); update_post_meta($page_id, 'sanka-zenin', $everyname ); update_post_meta($page_id, 'shoukaisha', $introducername ); update_post_meta($page_id, 'shokushu', $jobtype ); update_post_meta($page_id, 'kikkake', $trigger2 ); update_post_meta($page_id, 'masseji', $message ); } header("Location: https://koganekon.com/thank-you-page/"); exit; } get_header(); ?> <main id="content"> <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> <article id="post-<?php the_ID(); ?>" <?php post_class(); ?>> <header class="header"> <h1 class="entry-title"><?php the_title(); ?></h1> <?php edit_post_link(); ?> </header> <div class="entry-content"> <?php if ( has_post_thumbnail() ) { the_post_thumbnail(); } ?> <?php the_content(); ?>
<?php include locate_template( 'form-confirm.php' );?>
<div class="entry-links"><?php wp_link_pages(); ?></div> </div> </article> <?php if ( comments_open() && ! post_password_required() ) { comments_template( '', true ); } ?> <?php endwhile; endif; ?> </main> <?php get_sidebar(); ?> <?php get_footer(); ?>

試したこと

$birthdayyear = hsc($_POST["birthdayyear"]);
$birthdaymonth = hsc($_POST["birthdaymonth"]);
$birthdayday = hsc($_POST["birthdayday"]);
if (!empty($birthdayyear) && !empty($birthdaymonth) && !empty($birthdayday)): $birthday = $birthdayyear. "年 " .$birthdaymonth. "月 ".$birthdayday. "日"; endif;
$age = hsc($_POST["age"]);

の下に
$gender = htmlspecialchars($_POST["gender"]);

と入力して表示されなかったです。

補足情報(FW/ツールのバージョンなど)

Macbookpro13インチ os catalina 10.15.7

ここにより詳細な情報を記載してください。

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

FKM

2020/12/28 06:00

これ、WordPressじゃないですか?だとしたらタグに入れておいた方がいいですよ
masashitonomura

2020/12/28 06:06

すいません。 WordPressです。 無知で申し訳ないですけど、タグとはどんなタグをいれたらいいんでしょうか?
m.ts10806

2020/12/28 06:32

質問は編集できますし、半永久的に残り続けます。 タグ、コード部分はせめて対応しておいてください。
guest

回答1

0

ベストアンサー

どこにもgenderをPOSTで取得している部分がないです。一度、POSTの役割を見直した方がいいのでは。

投稿2020/12/28 06:02

FKM

総合スコア3635

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問