4

我有几个从表单中的循环创建的复选框(我不知道它们的数量)。

<form>
<input type="checkbox" name="id" value="id">
<input type="checkbox" name="id" value="id">
...//create in a loop
<input type="checkbox" name="id" value="id">
</form>

我的问题是如何阅读它们,如果我使用<?php $_REQUEST['id']; ?>,它只会读取最后一个复选框。

4

2 回答 2

13

使用输入数组:

<input type="checkbox" name="id[]" value="id_a">
<input type="checkbox" name="id[]" value="id_b">
<input type="checkbox" name="id[]" value="id_c">
<!--                           ^^ this makes it an array -->

$_REQUEST['id']可以访问:

foreach($_REQUEST['id'] as $id)
{
    echo $id;
}

输出

id_a
id_b
id_c

旁注:这适用于$_POSTand $_GET(不仅仅是$_REQUEST)。一般来说,$_REQUEST如果可能的话应该避免。

于 2013-02-18T14:44:19.090 回答
-4

为您的复选框使用唯一 ID,例如,

<form>
<input type="checkbox" name="id1" value="value1">
<input type="checkbox" name="id2" value="value2">
...//create in a loop
<input type="checkbox" name="id3" value="value3">
</form>
于 2013-02-18T14:49:50.393 回答