現在PHPでサイトを作成しており、
お問い合わせフォームにて性別を選択するのにラジオボックスを設置しています。
入力画面で選択し、投稿完了ページに移行すると、女性を選んでいても、男性、その他を選んでいても、表示が「on」になってしまいます。
HTML
1<!DOCTYPE html> 2<html lang="ja"> 3<head> 4 <meta charset="UTF-8"> 5 <title>お問い合わせ</title> 6 <meta name="description" content="お問い合わせフォーム"> 7 <link rel="stylesheet" href="contact.css"> 8 </head> 9 10 <body> 11<form method="post" action="contact.php"> 12<div class="title"> 13<h1>お問い合わせ</h1> 14</div> 15<p>お名前 ※必須</p> 16<input type="text" name="name" placeholder="名前を入力"> 17<p>性別 ※必須</p> 18<label><input type="radio" name="gender" value="male" checked>男性</label> 19<label><input type="radio" name="gender" value="female" checked>女性</label> 20<label><input type="radio" name="gender" value="etc">その他</label> 21<p>メールアドレス ※任意</p> 22<input type="email" name="email" placeholder="メールアドレスを入力"> 23<p>お問い合わせ内容 ※必須</p> 24<textarea name="massage" placeholder="お問い合わせ内容を入力"></textarea> 25<p><input type="submit" value="送信"></p> 26</form> 27</body> 28</html> 29
PHP
1<?php 2 3$name=$_POST['name']; 4$gender=$_POST['gender']; 5$email=$_POST['email']; 6$massage=$_POST['massage']; 7 8$name=htmlspecialchars($name); 9$email=htmlspecialchars($email); 10$massage=htmlspecialchars($massage); 11 12if($name!=''&&$gender!=''&&$massage!=''){ 13 print "投稿が完了しました!<br />"; 14} 15 16if($name==""){ 17 print "お名前を入力してください<br />"; 18}else{ 19 print "お名前:$name<br />"; 20} 21if(isset($_POST['gender'])){ 22 $gender=$_POST['gender']; 23 print "性別:$gender<br />"; 24}else{ 25 print "性別を選択してください<br />"; 26} 27if($email!=''){ 28print "メールアドレス:$email<br />"; 29} 30if($massage==''){ 31 print "お問い合わせ内容を入力してください<br />"; 32}else{ 33 print "お問い合わせ内容:$massage<br />"; 34} 35?> 36