![](/img/trans.png)
[英]Simple way to select chosen option in <select> from the value given by $_POST?
[英]How do I obtain the value of the option that was chosen in a select from?
在下面的PHP代码中,我创建了一个用于创建下拉列表的表单。
<?php
echo "<body>";
echo "<div id='network_name' class='col-md-3'>";
echo "<h2> Agency Network </h2>";
echo "<form action='droplistpop.php' method='post'>";
echo "<select name='network'>";
while($result1 = mysqli_fetch_assoc($result)) {
unset($network_id, $network_name);
$network_id = $network_name['network_id'];
$network_name = $result1['network_code'];
echo '<option name="entry" value="' . $network_id . '">' . $network_name . '</option>';
$network_chosen = $network_id;
}
echo "</select>";
echo "<input name='submit' type='submit' value='Send' />";
echo "</form>";
echo "</div>";
?>
此代码按需工作。 它根据数据库查询的结果填充一个下拉列表。 提交表单后,我要获取选择的选项并在另一个查询中使用它。 提交后,我使用以下命令打印$ _POST变量的内容:
print_r($_POST);
我的结果如下:Array([network] => [submit] => Send)
我想获取为网络选择的值,但它似乎为空。 谁能告诉我我在做什么错。
顺便说一下,我真的是编码新手,这是我第一次使用SO,所以请原谅任何使用错误。 谢谢。
$network_id = $result1['network_id'];
而不是$network_id = $network_name['network_id']
像这样的输出:
Array ( [network] => 2 [submit] => Send )
您为network_id设置了错误的值,这就是为什么它的输出为空白。 另外,不需要选项标签上的“名称”属性。 请尝试以下更改。
<?php
echo "<body>";
echo "<div id='network_name' class='col-md-3'>";
echo "<h2> Agency Network </h2>";
echo "<form action='droplistpop.php' method='post'>";
echo "<select name='network'>";
while($result1 = mysqli_fetch_assoc($result)) {
unset($network_id, $network_name);
$network_id = $result1['network_id'];
$network_name = $result1['network_code'];
echo '<option value="' . $network_id . '">' . $network_name . '</option>';
$network_chosen = $network_id;
}
echo "</select>";
echo "<input name='submit' type='submit' value='Send' />";
echo "</form>";
echo "</div>";
?>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.