如何获取选择中选择的选项的值?

时间:2017-06-26 13:46:10

标签: php mysql

在下面的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);

我的结果如下: 数组([网络] =&gt; [提交] =&gt;发送)

我想获取为网络选择的值,但它似乎是空白的。任何人都可以告诉我我做错了什么。

顺便说一句,我在编码方面很陌生,这是我第一次使用SO,所以请原谅我的任何使用错误。谢谢。

2 个答案:

答案 0 :(得分:1)

$network_id = $result1['network_id'];     代替 $network_id = $network_name['network_id']

输出如下:

Array ( [network] => 2 [submit] => Send )

答案 1 :(得分:1)

您正在为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>";
?>