そこで、ユーザーが続行する前に3つの無線オプションのいずれかを選択する必要があるように登録フォームを作成しました。ただし、ユーザーがオプションを選択せずに[送信]をクリックした場合は、少なくとも「オプションを選択してください」などのメッセージを表示したいと思います。これまでの私のコードは次のとおりです。
<?php
$reg_type = "";
function setclick()
{
if(isset($_POST["Submit"]))
$clicked=1;
else
$clicked=0;
}
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["Reg_type"])) {
$clicked=1;
header('Location: Registration_1.php');
}
else {
$reg_type = $_POST["Reg_type"];
header('Location: Registration_2.php');
}
}
echo $clicked;
?>
<form name="frmtype" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method="POST" >
<input type="radio" name="Reg_type" value="1"/> Registering myself with credit card or bank account <br/>
<input type="radio" name="Reg_type" value="2"/> Registering multiple people using credit card or bank account <br/>
<input type="radio" name="Reg_type" value="3"/> Registering multiple people using a purchase order <br/>
<input type="submit" name="Submit" value="Submit" />
<?php
setclick();
if($clicked)
echo "Please select an option";
?>
オプションを選択せずに[送信]をクリックした場合、エラーメッセージを表示するロジックを停止するのに非常に苦労しています。