1

好的,这是我的问题:

我可以创建下拉列表,但是当我尝试将最后使用的选项卡设置为选中时,它会运行 while 查询并选择底部选项。

这是我的代码:

<?php
    $sql="SELECT id, description FROM sites"; 
    $result=mysql_query($sql); 

    $options=""; 

    while ($row=mysql_fetch_array($result)) { 
        $id=$row["id"]; 
        $thing=$row["description"];
        $thing2 = $_POST['thing'];
        $options.="<OPTION VALUE='if (isset($_POST['thing'])){ echo $thing2;  'selected='selected''}else{ echo $id}'>".$thing;
    }
?>

<form action="" method="post" />
    <SELECT NAME="thing" id="thing">
        <OPTION VALUE=0>All
        <?=$options ?>
    </SELECT> 
    <input type="submit" name="submit" value="Update"/>
</form>

单击提交按钮后,如何将选定的选项卡设置为它所在的选项卡?

4

1 回答 1

0
$options.="<OPTION VALUE='if (isset($_POST['thing'])){ echo $thing2;  'selected='selected''}else{ echo $id}'>".$thing;

需要更改为

$is_selected = isset($_POST["thing"]) && $_POST["thing"] == $id;
$options.="<OPTION VALUE='".$id."'".($is_selected?" selected='selected'":"").">".$thing."</OPTION>";
于 2013-05-21T02:36:59.827 回答