Php 提交后从下拉菜单中保留所选项目

Php 提交后从下拉菜单中保留所选项目,php,html,mysql,form-submit,html-select,Php,Html,Mysql,Form Submit,Html Select,您好,我有一个下拉菜单,当按下submit按钮时,它会保存数据库中的项目。菜单项不会保留,而是会重置回最初启动的状态 我读了几篇关于这个主题的帖子,但我的案例很具体,我不确定应该在哪里插入所选属性 <form name="upServForm" action="" method="post" > <?php $dropdown = "<select name='codes'>"; while($row = mysql_fetch_

您好,我有一个下拉菜单,当按下submit按钮时,它会保存数据库中的项目。菜单项不会保留,而是会重置回最初启动的状态

我读了几篇关于这个主题的帖子,但我的案例很具体,我不确定应该在哪里插入所选属性

<form name="upServForm"  action="" method="post" >

<?php
        $dropdown = "<select name='codes'>";
        while($row = mysql_fetch_assoc($result2)) 
        {
            $dropdown .= "\r\n<option value='{$row['sid']}'>{$row['sid']}</option>";
        }
        $dropdown .= "\r\n</select>";
?>

试试这个:

$dropdown = "<select name='codes'>";
while($row = mysql_fetch_assoc($result2)) 
{
    $dropdown .= "\r\n<option value='{$row['sid']}'".(($_POST["codes"] == $row["sid"]) ? " selected='selected'" : "").">{$row['sid']}</option>";
}
$dropdown .= "\r\n</select>";
$dropdown=”“;
而($row=mysql\u fetch\u assoc($result2))
{
$dropdown.=“\r\n{$row['sid']}”;
}
$dropdown.=“\r\n”;

您的代码中似乎缺少一个括号,在选择后关闭该括号。不确定该括号指向何处。谢谢您,虽然正确的方法是这样做是的-我的解决方案中缺少一个括号,但它确实有效。它使用内联if语句,以消除代码重复的需要。