一些背景信息; 在这种情况下,在5年的时间内,我需要为每月的每一天和所有年份设定每日价格,因为这可能会有所不同。
所以我提出了这个输入表单示例
<form action="" method="POST">
<?
for ($years = $year; $years <= 2021; $years++) {
?>
<table border="1" cellpadding="0" cellspacing="5" width="100%">
<tr>
<th>Year <? echo $years; ?></th>
<td style="border:0" colspan="31"></td>
</tr>
<tr>
<th>Jan</th>
<?
for ($i = 1; $i <= $num_days_in_jan; $i++) {
echo '
<td valign="top" align="left">
'.$i.'<p>
<p align="right"><input name="dayprice'.$i.'01'.$years.'" type="text" size="1" min="25" value="45"> €</p>
</td>';
}
?>
</tr>
<!-- repeating for all 12 months and then all over for the next years
........
........
-->
<?
}
?>
</table>
<p>
<p align="left"><button class="w3-button w3-section w3-blue w3-ripple" type="submit" value="Complete step 6" name="action">Complete step 6</button></p>
然后我需要写一些像这样的代码来检索发布的数据
//read data from submitted forms
if (isset($_POST['action'])){
$action = $_POST['action'];
if ($action == 'Complete step 6'){
echo 'day price: '.$_POST['dayprice1012018'];
echo 'day price: '.$_POST['dayprice2012018'];
//.... and so on or put this is a kind of a loop
}
}
所以我必须有一种更简单的方法来做到更好的方式 希望有人能让我走上更好的道路......谢谢你们
答案 0 :(得分:1)
您可以通过将[]添加到input的name属性来创建名称数组。 例如:
<input name="dayprice['.$i.'][01]['.$years.']" type="text" size="1" min="25" value="45">
然后您可以轻松地遍历帖子变量。