HTML格式,接受未经检查的输入

问题描述

| 嗨,我有这样的表格
<form method=post action=\"control.PHP\">
<input name=\"cat[]\" type=\"checkBox\" value=\"blabla\" checked>blabla
<input name=\"cat[]\" type=\"checkBox\" value=\"bleble\" checked>bleble
.
.
.
<input name=\"send\" type=\"submit\" id=\"send\" value=\"send\">
</form>
在control.PHP中,当我使用$ _POST [cat]时,我想取消选中复选框。我怎样才能做到这一点?感谢帮助...     

解决方法

复选框组(
cat[]
)可以使用foreach从数组轻松生成。
$cat=array(
  \'blabla\' => \'blabla\',\'bleble\' => \'bleble\',...
);

<? foreach ($cat as $k=>$v) : ?>
  <input name=\"cat[]\" type=\"checkbox\" value=\"<?=$k?>\" checked /><?=$v?>
<? endforeach; ?>
如果您有一个包含所有可能复选框的数组,则将其与选定复选框的POSTed数组进行比较,并找出缺少的复选框非常容易。 您可以使用array_diff:
$unchecked=array_diff(array_keys($cat),$_POST[\'cat\']);
    ,您无法获取未选中的框,只能获取已选中的框。 如果需要未选中的框,则必须查看已选中的框并找出未选中的框。     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...