【发布时间】:2020-05-15 20:06:24
【问题描述】:
我写了一个带有表单的html页面; <form action="" method="post">。如您所见,此表单应发布到放置表单的相同 url。我正在使用 PHP 来捕获帖子;
if(isset($_POST['submit'])) {
// do stuff
}
在表单中有一个带有正确名称属性的提交按钮<button type="submit" name="submit">Send</button>。如果我记录 post 变量,我会从表单中获取所有命名字段,但我没有得到这些字段的正确值。
我将添加一个稍微缩写的表单:
<form action="" method="post">
<table class="table my-5" id="table">
<?php foreach($parameters as $key => $value): ?>
<tr>
<td>
<h6><?= $key ?></h6>
</td>
<td>
<?php
switch($key){
case 'Origin':
echo '<select class="param" name="Origin">';
foreach($ports as $port){
echo '<option>' . $port . '</option>';
}
echo '</select>';
break;
case 'OriginDepartureDate':
echo '<input class="param" name="OriginDepartureDate" type="text" value="' . $value . '">';
break;
case 'Limit':
echo '<input class="param" data-key="Limit" name="Limit" type="text" placeholder="' . $value . '">';
break;
default:
echo '<span class="param">'. $value . '</span>';
break;
} ?>
</td>
</tr>
<?php endforeach ?>
</table>
<button type="submit" name="submit">Send</button>
</form>
以及用于构建表单的参数:
$parameters['Origin'] = null;
$parameters['OriginDepartureDate'] = null;
$orderbyArr = ['DRS','GRQ','LGG',...];
奇怪的是,有些值确实通过了,而另一些则没有,Origin 值通过了,Limit 值也通过了,但是(不是“DestinationDepartureDate”而是:) OriginDepartureDate 没有。
我这几天一直在查看我的代码,但我在逻辑中找不到任何明显错误的地方。如果一些新鲜的眼睛能看到我看不到的东西,那就太好了。
【问题讨论】:
-
"I'll add a slightly abbreviated version of the form"- 您可以通过发布的内容复制该问题作为自己的测试吗? -
你在哪里/如何定义
$orderbyArr数组? -
@CarlBinalla 抱歉,我的意思是“OriginDepartureDate”,将修改问题。
-
@mitkosoft $orderbyArr 变量是 $ports 变量的有序版本,将修改问题,谢谢...
-
祝调试顺利!