我知道如何创建动态复选框
foreach($data as $row){
echo"<input type=\"checkbox\" name=\"auswahl[]\" value='$row[0]'> Type: $row[1]"; }
但我想为每个复选框添加一个选择框(对于每个复选框,相同的选择框)。我的问题是,我怎样才能做到这一点,以便我以后知道哪个选择框对应于哪个复选框?
要发送添加[]
到输入名称的数据数组。由于复选框并不总是发送(感谢 Marcin!)您所要做的就是为数组设置一个键,如下所示:
<input type="checkbox" name="auswahl[0]" />
<select name="auswahl_select[0]">...</select>
<input type="checkbox" name="auswahl[1]" />
<select name="auswahl_select[1]">...</select>
<input type="checkbox" name="auswahl[2]" />
<select name="auswahl_select[2]">...</select>
提交后,您有:
Array
(
[auswahl] => Array
(
[0] => 123,
[1] => 456,
[2] => 789,
),
[auswahl_select] => Array
(
[0] => 123,
[1] => 456,
[2] => 789,
)
auswahl中[0]的key和auswahl_select中[0]的key是相关字段。
如果您愿意,还可以像这样专门指定数组键:
<?php foreach ($data as $row) : ?>
<input type="checkbox" name="auswahl[<?php echo $row['id'] ?>]" />
<select name="auswahl_select[<?php echo $row['id'] ?>]">...</select>
<?php endforeach; ?>
或像这样递增
<?php $i = 0 ?>
<?php foreach ($data as $row) : ?>
<input type="checkbox" name="auswahl[<?php echo $i ?>]" />
<select name="auswahl_select[<?php echo $i++ ?>]">...</select>
<?php endforeach; ?>