長話短說,我的按字段順序似乎不適用於我的MySQL調用。我真的不能找到一個模式在存儲...「按字段排序」MySQL似乎沒有工作
$ theorder正確設置爲
, 'People-Wedding Photo', 'People-Kids', 'People-Male/Female', 'Architecture-Exterior', 'Architecture-Interior', 'Animal-Birds', 'Backgrounds'
這裏是我的代碼。正如你所看到的,我循環,做我的格式轉換....但我仍然得到一個錯誤的訂單...隨機訂單...
有什麼我失蹤?
$under_link_query = mysql_query("SELECT DISTINCT(type), type FROM ".$prefix."ProFolio_work WHERE type != 'Backgrounds' ORDER BY FIELD(type" . $theorder .")");
while($u_row = mysql_fetch_assoc($under_link_query)){
$type = html_entity_decode($u_row['type']);
$typeForm = preg_replace('/[^a-z0-9]/i', '_', $type);
?>
<a href="#" id="link_<? echo str_replace(' ', '_', $typeForm); ?>">
<? echo ucfirst($type); ?></a>
<?
什麼是變量$ theorder,它在哪裏設置正確?我很困惑。第一位是你想要的順序嗎?爲什麼不做類似SELECT ... FROM ... ORDER BY的類型DESC或ASC,取決於你想要的方式? – thatidiotguy
正確的語法iirc是'ORDER BY $ fieldname',您應該默認進行清理。此外,'ORDER BY'將根據該字段進行排序......但根據db設置的優先級進行排序。數字排序比聯想排序更可預測。我的建議是採取數據和使用PHP操縱它到你想要使用的格式。 – Malovich
它被稱爲「ORDER BY FIELD」,您可以在其中手動指定要顯示的訂單結果。 http://www.cfdan.com/posts/Handy_MySQL_-_ORDER_BY_FIELD.cfm – PaulHanak