如何获取从选择中选择的选项的值?
问题描述:
在下面的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);
和我的结果如下: 阵列([网络] => [提交] =>发送)
我想获取为网络选择的值,但它看起来是空白的。任何人都可以告诉我我做错了什么。
顺便说一下,我在编码方面真的很新颖,这是我第一次使用SO,请原谅我的任何使用错误。谢谢。
答
$network_id = $result1['network_id'];
而不是 $network_id = $network_name['network_id']
输出是这样的:
Array ([network] => 2 [submit] => Send)
+0
我做了建议的改变,并做了这项工作! – user2167046
答
要设置一个错误值NETWORK_ID,这就是为什么它的输出是空白。另外,选项标签上的'name'属性不需要。尝试下面的更改。
<?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>";
?>
你能解释一下'$ network_id = $ network_name ['network_id'];'? –
查看生成的选择块的源代码。值是否正确显示? – aynber
您是否正常提交此表单或者是否存在涉及某个Ajax的地方? – Quentin