我有以下代码来显示动态复选框。
while($result = mysqli_fetch_array($query)){
$oaName = $result['oaName'];
echo '<input class="checkBoxes" type="checkbox" name="checkBoxArray[]" value="'.$oaName.'" style="float:left;"'; ?> <?php if(isset($_POST['checkBoxArray'])) echo "checked='checked'"; ?> <?php echo '>'; ?>
}
我只想保留提交表单后选中的那些复选框的状态。但是使用上述代码,在提交表单后,所有复选框均显示为选中状态。有人知道我在做什么错吗?
编辑1
checkBoxArray[]
是从数据库获取的复选框名称
答案 0 :(得分:0)
经过几次试验,我可以通过以下方式完成它。这里的关键是使用in_array
while($result = mysqli_fetch_array($query)){
$oaName = $result['oaName'];
echo '<div class = "checkbox-group" required ><input class="checkBoxes" type="checkbox" name="checkBoxArray[]" value="'.$oaName.'" style="float:left;"'; ?> <?php if(in_array($oaName,$_POST['checkBoxArray'])) echo "checked='checked'"; ?> <?php echo '></div>
}