2011-07-19 131 views
0

我有一个循环创建了以下复选框:PHP的:多个复选框

<input type='checkbox' value=0 name='<?php echo $question_id; ?>' /> 

每个复选框都会有不同的ID,当用户选中几个复选框,我想收集所有的ID和插入它变成一张表,将'事件'表与'问题'表联系起来。

但是我没有得到的ID ......我知道我应该使用数组,但在名称属性或属性的值?另外,我该如何传递ID ......是否会进入值域?

+0

您可以使用implode函数implode –

回答

3

在HTML:

<input type='checkbox' value=1 name='checkboxname[<?php echo $question_id; ?>]' /> 

在PHP:

$set_checkboxes = array_keys($_POST['checkboxname']); 

,或者:

在HTML:

<input type='checkbox' value="<?php echo $question_id; ?>" name='checkboxname[]' /> 

在PHP:

$set_checkboxes = $_POST['checkboxname']; 
1

我相信你需要这样的东西..

<input type='checkbox' value=<SOME UNIQUE VALUE> name='field_name[]' /> 

你会通过这恰好是一个数组的field_name循环。

+0

这太好了......值='必须在引号中“还是仅当它是一个字符串?我通过一个号码/编号... – redconservatory

+0

我用报价(对不起,我错过了它)。 – luckytaxi

0

试着改变你输入到这一点。

<input type='checkbox' value='<?php echo $question_id; ?>' name='questions[]' /> 

现在,当你用PHP后它会返回一个数组的所有问题编号

$questionIds = $_POST['questions']; 
0

你的HTML:

<form method="post" action=""> 
<input type="checkbox" id="things[]" value="red"> Cat<br> 
<input type="checkbox" id="things[]" value="blue"> Mouse<br> 
<input type="checkbox" id="things[]" value="green"> Car<br> 
<input type="checkbox" id="things[]" value="yellow"> DaniWeb 
</form> 

你的PHP:

<?php 
$things = serialize($_POST['things']); 

$query = "INSERT INTO table(things) values($things)"; 
mysql_query($query) or die(mysql_error()); 
?>