我正在从数据库中获取表单选择列表的信息。我希望表单的默认值为橙色。表单选择选项是从用户更新的数据库中获取的("颜色")。所以橙色是唯一以"O"开头的颜色,所以我认为必须有一种方法可以用某个字符(在本例中为 O)开始排序顺序。
这是我从数据库中获取颜色列并将行放入表单选项选择中的内容。
$color_select = mysql_query("SELECT * FROM color");
/* Some stuff here */
echo '<select name="Color" id="color">';
while ($row_item = mysql_fetch_array($color_select)){
$pname = $row_item["color"];
echo "<OPTION value='"$pname'">$pname</OPTION>";
}
echo '</SELECT>';
/* Some stuff here */
Order by i combination med if är trevligt
ORDER BY IF(color = 'orange', 0, 1), color;
Har du därimot flera specialfall är case användbar:
ORDER BY CASE color WHEN 'Orange' THEN 0 WHEN 'Red' 1 WHNE 'Green' THEN 2 ELSE 3 END, color;