我使用PHP和HTML构建一个使用PHP while循环生成的HTML表。我正在填充HTML下拉菜单,其中包含mySQL数据库中的所有不同的投资组合名称。要做到这一点,我正在做:
$query2 = "SELECT DISTINCT PORT FROM CELP";
$result2 = mysql_query($query2) or die (mysql_query($default));
if ($result2)
{
{
echo "<select id='port' name='port'>";
while ($col = mysql_fetch_array($result2)) {
echo "<option value='" . $col[0] . "'>" . $col[0] . "</option";
}
echo "</select>";
} }
这样可行,但每当我提交表单时,我选择的下拉值都会重置为默认的第一个值。如何选择&#34;选择&#34;上次提交的选项中的标记,仅限该标记。附:我使用$ _GET,它的变量名是port,因此它显示了URL中当前选择的投资组合。
答案 0 :(得分:2)
这样做:
while ($col = mysql_fetch_array($result2)) {
if(shouldBeSelected)
{
echo "<option selected="selected" value='" . $col[0] . "'>" . $col[0] . "</option";
}
else
{
echo "<option value='" . $col[0] . "'>" . $col[0] . "</option";
}
}
为应该选择的那个做。您只需使用selected
属性。