计算选中了多少复选框php/html

计算选中了多少复选框php/html,php,html,checkbox,Php,Html,Checkbox,您好,我是php新手,我想知道我如何计算在单击submit后选中了多少个“复选框”。 例如: <input type = "checkbox" value = "box" name = "checkbox1"/> <input type = "checkbox" value = "box" name = "checkbox2"/> <input type = "checkbox" value = "box" name = "checkbox3"/> 将复选框

您好,我是php新手,我想知道我如何计算在单击submit后选中了多少个
“复选框”
。 例如:

<input type = "checkbox" value = "box" name = "checkbox1"/>
<input type = "checkbox" value = "box" name = "checkbox2"/>
<input type = "checkbox" value = "box" name = "checkbox3"/>

将复选框命名为类似数组的名称

<input type = "checkbox" value = "box" name = "checkbox[]"/>

注意:根据您的表单提交方法,无论是
$\u GET
还是
$\u POST
您都需要使用
$\u POST['checkbox']
进行POST方法和
$\u GET['checkbox']
进行获取方法。

使用jQuery

$(“输入:复选框:选中”)。长度

这将返回选中的支票盒数

在php中,需要将其作为数组传递


echo计数($_POST['checkbox'])

您可以将复选框的名称设置为数组:

<input type = "checkbox" value = "box" name = "checkbox[1]"/>
<input type = "checkbox" value = "box" name = "checkbox[2]"/>
<input type = "checkbox" value = "box" name = "checkbox[3]"/>
否则,您可以迭代它们中的每一个并增加一个变量:

$counter = 0;
foreach( array('checkbox1', 'checkbox2', 'checkbox3') as $name ) {
  if( isset( $_POST[ $name ] ) {
     $counter++
  }
}
echo $counter;

您必须重命名名称并添加值

<input type = "checkbox" value = "box" name = "checkbox[]" value="1"/>
<input type = "checkbox" value = "box" name = "checkbox[]" value="2"/>
<input type = "checkbox" value = "box" name = "checkbox[]" value="3"/>
但也有实际选择的值:

foreach($_POST['checkbox'] as $val)
{
    echo "$val<br>\n";
}
foreach($\u POST['checkbox']作为$val)
{
回显“$val
\n”; }
单击“提交”时,选中的所有框都将出现在请求中。 在您的情况下,如果选中checkbox1,您将获得: “checkbox1=box”

如果您使用GET作为方法,它将是这样的:并且您可以使用$\u GET['checkbox1'访问它

如果使用POST作为方法,则可以使用$\u POST['checkbox1']


您还可以使用isset($\u POST['checkbox1'])检查该框是否已选中(以及请求数据中的复选框)

这可能是正确的答案,因为在不使用
name=“checkbox[]”
的情况下,它需要检查多个值。如果输入类型是“number”输入类型呢,看来我应该把我的答案贴出来,而不是花时间去测试它。和你的答案一样+1这是一个极好的例子。一种真正的PHP方式。
<input type = "checkbox" value = "box" name = "checkbox[1]"/>
<input type = "checkbox" value = "box" name = "checkbox[2]"/>
<input type = "checkbox" value = "box" name = "checkbox[3]"/>
echo count( $_POST['checkbox'] ); // this will give you the count
$counter = 0;
foreach( array('checkbox1', 'checkbox2', 'checkbox3') as $name ) {
  if( isset( $_POST[ $name ] ) {
     $counter++
  }
}
echo $counter;
<input type = "checkbox" value = "box" name = "checkbox[]" value="1"/>
<input type = "checkbox" value = "box" name = "checkbox[]" value="2"/>
<input type = "checkbox" value = "box" name = "checkbox[]" value="3"/>
echo count($_POST['checkbox']);
foreach($_POST['checkbox'] as $val)
{
    echo "$val<br>\n";
}