2011-07-30 48 views
11

我有我的表格上多个复选框:如何处理PHP表单中的多个复选框?

<input type="checkbox" name="animal" value="Cat" /> 
<input type="checkbox" name="animal" value="Dog" /> 
<input type="checkbox" name="animal" value="Bear" /> 

如果我检查所有三个和点击提交,在PHP脚本如下代码:

if(isset($_POST['submit']) { 
    echo $_POST['animal']; 
} 

我得到“熊”,即最后选中复选框的值,即使我选择了全部三个。如何获得所有3?

回答

20

见我在名所做的更改:

<input type="checkbox" name="animal[]" value="Cat" /> 
<input type="checkbox" name="animal[]" value="Dog" /> 
<input type="checkbox" name="animal[]" value="Bear" /> 

,你必须将它设置成阵列。以下字段名

<input type="checkbox" name="animal[]" value="Cat" /> 
<input type="checkbox" name="animal[]" value="Dog" /> 
<input type="checkbox" name="animal[]" value="Bear" /> 

在PHP端

print_r($_POST['animal']); 
3

使用方括号,可以像任何其他数组对待它。

16
<input type="checkbox" name="animal[]" value="Cat" /> 
<input type="checkbox" name="animal[]" value="Dog" /> 
<input type="checkbox" name="animal[]" value="Bear" /> 

如果我检查所有三个和点击提交,在PHP脚本如下代码:

if(isset($_POST['animal'])){ 
    foreach($_POST['animal'] as $animal){ 
     echo $animal; 
    } 
} 
相关问题