我想以下拉菜单的形式从数据库中获取数据。但是当我运行代码时,下拉列表中出现的唯一名称是数据库中的第一个名称。如何让所有名称出现在下拉列表中?
<?php
include('config.php');
$sqladmin = "SELECT * FROM admin";
$result = mysql_query($sqladmin);
if($result === FALSE) {
die(mysql_error());
}
$row = mysql_fetch_array($result);
$name1 = $row['name1'];
?>
<tr>
<td>user</td>
<td>:</td>
<td>
<label>
<select name="user" id="user">
<option selected="selected"></option>
<?php echo '<option value="'.$row['name1'].'">' . $row['name1'] . '</option>';?>
</select>
</label>
</td>
</tr>
答案 0 :(得分:4)
使用带有while循环的mysql_fetch_assoc()迭代所有结果数据
<?php
include('config.php');
$sqladmin = "SELECT * FROM admin";
$result = mysql_query($sqladmin);
if($result === FALSE) {
die(mysql_error());
}
?>
<tr>
<td>user</td>
<td>:</td>
<td>
<label>
<select name="user" id="user">
<option selected="selected"></option>
<?php while ($row = mysql_fetch_assoc($result)) {
echo '<option value="'.$row['name1'].'">' . $row['name1'] . '</option>';
} ?>
</select>
</label>
</td>
</tr>
答案 1 :(得分:2)
你必须循环结果......
while($row = mysql_fetch_array($result))
{
echo '<option value="'.$row['name1'].'">' . $row['name1'] . '</option>';
}
答案 2 :(得分:0)
把它放进一个数组......
while($row=mysql_fetch_array(
$result,MYSQL_ASSOC)){$name1[] = $row;
}
答案 3 :(得分:0)
添加while($ row = mysql_fetch_array($ result));并在while循环中写入选项标记。有关详细信息,请参阅http://in3.php.net/mysql_fetch_array
答案 4 :(得分:0)
单独更改此块并进行以下更改:
<select name="user" id="user">
<option selected="selected"></option>
<?php while($row = mysql_fetch_array($result))
{
echo '<option value="'.$row['name1'].'">' . $row['name1'] . '</option>';
}?>
</select>