知识渊博的人。我无法从表单中检索复选框数据。我有一个网站,用户可以自己添加复选框,所以我写的是这样的:
<table style="padding:10px;">
<?php
$query_boolean = $DB->prepare("SELECT * FROM moduls WHERE type='boolean'") or die(mysql_error());
$query_boolean->execute();
while (($row = $query_boolean->fetch()) != false)
{
?>
<tr>
<td>
<?php echo $row->name ?>:
</td>
<td>
<?php
$s = "";
$s .= sprintf('<input type="checkbox" class="textbox" name="boolean_%s" value="yes">%s', $row->id, Yes);
$s .= sprintf('<input type="checkbox" class="textbox" name="boolean_%s" value="no">%s', $row->id, No);
echo $s;
?>
</td>
</tr>
<?php
}
?>
</table>
现在我有一个高级搜索,我必须通过每个复选框来查看已选择的内容(ether none,Yes,No或两者)。如何从变量中的每个复选框中获取信息?非常感谢你!
答案 0 :(得分:1)
要从复选框获取POST数据,必须具有属性
检查= “选中”
编辑: 如果您有2个复选框..
<input type="checkbox" checked="checked" class="textbox" name="boolean_yes" value="yes">
<input type="checkbox" class="textbox" name="boolean_no" value="no">
当您提交表单时,选中属性的复选框将作为POST发送,并且不会发送没有checked属性的复选框。
if(isset($_POST['search'])) {
$all_checked = array();
foreach($_POST as $key=>$value){
if(strpos($key, "boolean_") > -1){
$all_checked[$key] = $value;
}
}
var_dump($all_checked);
}
这样你就可以进入$ all_checked数组中所有标记的方框..所有其他的checbox都没有标记!
答案 1 :(得分:0)
如果您想获取复选框值,请使用复选框名称作为数组
<input type="checkbox" name="email1[]" value="">
通过
获取另一页<?php
$var2 = $_POST['email1'];
$v=implode(",",$var2);
echo $v;
?>
试试吧