我试图让用户从表单的下拉列表中选择状态,但是尽管查询有效,但DB已连接,但下拉列表中不显示列表。
不确定是否相关,但是我正在运行Windows Server,IIS 10和最新的PHP和MySql。
<div class="form-group col-md-3">
<label for="state">State</label>
<select class="form-control" name="state" id="state">
<?php
// Query to find STATE
$sql1 = "SELECT * FROM codetable WHERE category = 'state'";
$result1 = $conn->query($sql1);
$row1 = mysqli_fetch_array($result1);
while($row1 = mysqli_fetch_array($result1))
{
echo '<option value=" '.$row1['code'].' "> '.$row1['description'].' </option>';
}
?>
</select>
</div>
我希望数据库中的列表在下拉列表中,但是它是空的(无下拉列表)。
答案 0 :(得分:0)
在您的while循环之前摆脱$row1 = mysqli_fetch_array($result1);
并用此替换循环...
while($row1 = mysqli_fetch_array($result1))
{
?>
<option value="<?php echo $row1['code']; ?>"><?php echo $row1['description']; ?></option>
<?php
}
不推荐使用HTML。尽可能使用PHP标签对其进行分解,这将使您的代码更易于调试。
答案 1 :(得分:0)
删除您的第一个
$row1 = mysqli_fetch_array($result1);
行和 将您的两个变量(结果和row1)放入var_dump以进行调试