0

我有这段代码从Mysql的“类别”字段中收集类别,它是一个部分编辑表单,我希望在列表填充后选择之前选择的类别,代码是:

 <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>

我不知道该怎么做?我知道我应该在我想选择的选项上输入“已选择”,但是在我填写完列表后如何选择它?

4

2 回答 2

0

您可以通过这种方式使用索引选项卡$tab["key"],您可以轻松找到所需的行并对其进行编辑。

编辑:您的信息不是很清楚,但我认为这是您想要做的。否则,请澄清。

于 2013-03-17T13:59:46.427 回答
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 行而不是您的 1 行。当这呈现出列表时,所选项目将是任何匹配项$userSelectedOption

于 2013-03-17T14:05:11.037 回答