我一直在尝试从数据库中获取选项框的值。我不知道为什么这段代码不起作用。请帮忙
<?php
include_once "connection.php";
$order ="SELECT * FROM seminar ";
$result = mysql_query($order);
?>
<?php
echo '<div class="uk-form-row">';
echo '<label class="uk-form-label" for="form-h-s">Description</label>';
echo '<div class="uk-form-controls">';
echo '<select name="description" id="form-h-s">';
while($data = mysql_fetch_row($result)){
$options = '<option value="data[1]">data[2]</option>';
echo $options;
echo '</select>';
}
echo ' </div>';
echo '</div>';
?>
答案 0 :(得分:0)
<强>解决方案:强>
$options
无效,因为您正在撰写文字data[1]
(而不是变量$data[1]
);调用变量变量时,不能使用单引号;你需要使用双引号来使用变量插值,如下所示:
$options = "<option value='$data[1]'>$data[2]</option>";
// ^ double quote ^ $ sign ^ $ sign ^ double quote
您还在while循环中编写<{1}}标记。整件事情需要看起来像这样:
</select>
脚注:
echo '<select name="description" id="form-h-s">';
while($data = mysql_fetch_row($result))
{
echo '<option value='$data[1]'>$data[2]</option>';
//you don't even need to set the $options variable; just output it directly.
}
echo '</select>';
已被弃用;强烈建议您使用mysqli_
或更好PDO()
。