我有这个代码从Mysql的字段“category”收集类别,它是一个部分编辑表单,我希望在列表填充之后选择之前选择的类别,代码是:
<td align="right">Category</td>
<td>
<?php
// Write out our query.
$query = "SELECT id,cat_name,parent FROM categories WHERE parent='0'";
// Execute it, or return the error message if there's a problem.
$result = mysql_query($query) or die(mysql_error());
$dropdown = "<select name='category'>";
while($row = mysql_fetch_assoc($result)) {
$dropdown .= "\r\n<option value='{$row['id']}'>{$row['cat_name']}</option>";
}
$dropdown .= "\r\n</select>";
echo $dropdown;
?>
</td>
我不知道该怎么办?我知道我应该在我想要选择的选项上键入“已选择”,但是在填写列表后如何选择它?
答案 0 :(得分:0)
您可以使用索引标签$tab["key"]
,这样您就可以轻松找到所需的行并对其进行编辑。
编辑:您的信息不是很清楚,但我认为您希望这样做。否则,请澄清。
答案 1 :(得分:0)
在您的代码中,您没有检查用户之前选择的内容。你可以这样做:
$selected = '';
if($row['id']==$userSelectedOption) $selected = ' selected="selected"';
$dropdown .= "\r\n<option value='{$row['id']}'{$selected}>{$row['cat_name']}</option>";
在上面的示例中,我们有一个名为$userSelectedOption
的变量,它表示用户已选择的值。我们还假设它是一个类别的ID。在while
循环中,您将使用上述3行而不是您的一行。当这个呈现出来时,列表将使所选项目成为匹配$userSelectedOption