我需要在提交时检查单选按钮输入。
如果未选中任何单选按钮,则$err1_diet
设置为true,并且需要添加red
类。
我还需要知道检查了哪个单选按钮,因为这不是表单中的唯一问题。
if( !isset($_POST['diet']) ){
$err1_diet = true;
}elseif($_POST['diet'] == 1){
$diet = true;
}else{
$diet = false;
$yes = true;
}
<p class="<?php echo (($err1_diet == true) ? "red" : "" ); ?>">• Are you on a diet?<?php var_dump($err1_diet); ?></p>
<input type="radio" name="diet" value="1" <?php echo (($diet) ? 'checked="true"' : "" ); ?> /> Yes
<input type="radio" name="diet" value="0" <?php echo (($diet) ? '' : 'checked="true"' ); ?> /> No
答案 0 :(得分:2)
实际上没有...它在提交表单之前检查其中一个单选按钮。那就是问题
您可以使用$_SERVER['REQUEST_METHOD']=='POST'
解决问题,例如:
if( $_SERVER['REQUEST_METHOD']=='POST' and !isset($_POST['diet']) ){
$err1_diet = true;
}elseif($_POST['diet'] == 1){
$diet = true;
}else{
$diet = false;
$yes = true;
}
<p class="<?php echo (($err1_diet == true) ? "red" : "" ); ?>">• Are you on a diet?<?php var_dump($err1_diet); ?></p>
<input type="radio" name="diet" value="1" <?php echo (($diet) ? 'checked="true"' : "" ); ?> /> Yes
<input type="radio" name="diet" value="0" <?php echo (($diet) ? '' : 'checked="true"' ); ?> /> No