在下面的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,所以请原谅我的任何使用错误。谢谢。
答案 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>";
?>