我想用我从SQL数据库中获取的信息填充下拉列表。 我进行查询并希望使用while循环来回显输入字段。
我现在拥有的:
我看到下拉列表中有一个选项,没有数据。
我想要的是什么:
选项选择中的信息。
<dt><label for="image">Bild</label></dt>
<select id="image" name="ak_image" value="<?php echo $ak_image; ?>">
<?php
$result = mysql_query("SELECT bi_pfad, bi_name FROM tbl_bilder ");
$options = "";
while ($row = mysql_fetch_array($result)) {
$bi_name = $row["bi_name"];
$bi_pfad = $row["bi_pfad"];
$options .= "<option value=\"$bi_pfad\">".$bi_name."</option>\n";
}
echo $options;
echo "</select>\n";
?>
答案 0 :(得分:0)
由于您已通过phpmyadmin验证存在数据,因此会产生一些后续问题:
您可能还想稍微重构一下,以确保查询函数知道相应的连接,并引入一些错误捕获。
<?
// Somewhere towards the beginning of this page/view.
$db_connection = mysql_connect( $host, $user, $password );
?>
<dt><label for="image">Bild</label></dt>
<select id="image" name="ak_image" value="<?php echo $ak_image; ?>">
<?php
// Affirmatively pass the connection to the query. Also, check for errors.
$result = mysql_query("SELECT bi_pfad, bi_name FROM tbl_bilder ", $db_connection);
if( $result )
{
$options = "";
while ($row = mysql_fetch_array($result)) {
$bi_name = $row["bi_name"];
$bi_pfad = $row["bi_pfad"];
$options .= "<option value=\"$bi_pfad\">".$bi_name."</option>\n";
}
echo $options;
}
else
{
// Perform error trapping here.
}
echo "</select>\n";
?>
此外,如果您的PHP版本足以支持它们,那么切换库可能是个好主意。至少我会切换到mysqli或允许参数化查询设置的东西。