1

这是我的php代码:

$tasks = ' ';
$help = $_POST['help'];
if(empty($help))
{
    $tasks = "None selected.";
}
else
{
    $N = count($help);
    $tasks = $N;
}

HTML是:

<input type="checkbox" name="help" value="sign"> //with several inputs with different values

在表单提交时,它会通过电子邮件发送并适当地输出除数组计数之外的所有内容。它在电子邮件末尾始终将 $tasks 变量输出为 1,除非未选中任何复选框。选择复选框 (1-6) 的任何组合都以长度为 1 的数组结束。有谁知道为什么?谢谢!

4

3 回答 3

1

您需要将复选框设为数组。将名称更改为:

<input type="checkbox" name="help[]" value="sign">
于 2012-10-07T18:49:17.507 回答
1

您应该将您的 HTML 代码更改为:

<input type="checkbox" name="help[]" value="sign"> 

所以帮助将是一个数组。如果您只使用help,$_POST['help']将只包含最后一个值。

于 2012-10-07T18:49:26.857 回答
0

您必须重命名字段name="help[]",以便可以将其解析为数组。

于 2012-10-07T18:49:25.873 回答