現在PHPを使用してクイズを作成しているところです。
内容は以下の通りです
・回答フォームの入力欄はラジオボタン
・送信された回答が合っているかどうかを判定して、正解か不正解かの結果を表示する
・何も選択されずに送信された場合は回答を入力してくださいと表示する
現在起きている問題は正解、不正解の表示はできるのですが、回答を入力してくださいが表示できません。
<!DOCTYPE html> <html lang="en" dir="ltr"> <head> <meta charset="utf-8"> <title></title> </head> <body> <form class="" action="" method="post"> <div class="Pressure-ulcer"> <h2>日本の山脈は? <?php $t=$_POST['mountain']; if(isset($t)){ switch ($t) { case "富士山": echo '正解です'; break; case "エベレスト": echo'不正解です'; break; case "ヒマラヤ": echo'不正解です'; break; case "": echo'回答を入力してください'; break; } } ?> </h2> <p> <input type="radio" name="mountain" value="富士山">富士山 <input type="radio" name="mountain" value="エベレスト">エベレスト <input type="radio" name="mountain" value="ヒマラヤ">ヒマラヤ </p> </div> </body> </html>
何も選択されていない状態をどう表記したらよい分からず以下のようにしましたがうまくいきません。
case "ヒマラヤ" echo'不正解です"; break;
if文のみを使用して以下のようにもしましたがこれもうまくいきません。
if(isset(($t)){ if($t==='富士山'){ echo "正解です。";} } elseif($t==="エベレスト"){ echo"不正解です"; }elseif($t==="ヒマラヤ"){ echo"不正解です"; }else{ echo"回答を入力してください"; }
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/11/16 14:38
2019/11/17 01:43
2019/11/17 02:10
2019/11/17 05:58
2019/11/17 08:14