我有一个包含多行的表单,每行中有多个“选择”下拉菜单。为简单起见,我在此示例中显示了 2x2,但实际上它可以达到 5x5。
在简化形式中,我的 HTML 表单如下所示:
<form action="aaa2.php" method="post" name="book">
<?php $roomNumber=101; ?>
Normal Occupancy
<select name="occupancy[101]">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
Extra Beds
<select name="extrabed[101]">
<option value="1">1</option>
<option value="2">2</option>
</select>
<br><br>
<?php $roomNumber=101; ?>
Normal Occupancy
<select name="occupancy[102]">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
Extra Beds
<select name="extrabed[102]">
<option value="1">1</option>
<option value="2">2</option>
</select>
<br><br>
<input name="Submit" type="submit" value="submit">
</form>
在下一页上,我可以轻松地显示第一个下拉列表中的信息:
<?php
$occupancy_array=$_POST['occupancy'];
foreach($occupancy_array as $roomNumber=>$occupancy) {
echo "Room ".$roomNumber.". Normal occupancy is ".$occupancy.".<br>";
}
?>
当我尝试使用第二个下拉列表中的信息时,我的问题就出现了。我已经走到这一步了
<?php
$occupancy_array=$_POST['occupancy'];
$extrabed_array=$_POST['extrabed'];
foreach($occupancy_array as $roomNumber=>$occupancy) {
echo "Room ".$roomNumber.". Normal occupancy is ".$occupancy." and the room will take ".$extrabed." extra beds.<br>";
}
?>
但显然我需要第二个数组的另一条 foreach 行。我已经在系列中尝试过它,并且我已经尝试将它嵌套在第一个 foreach 中,但都不能正常工作。有没有一种方法可以将它们全部合并到一个 foreach 中?或者我应该怎么做?