作者JYHuang (夏天到了,冷不起來了說)
看板PHP
標題[討論] 排序變動的寫法..
時間Wed Apr 25 16:03:23 2012
以前寫過排序的方法是把容器下的所元件裡放隱藏欄位。
以陣列的方式submit給form。
<input type="hidden" name="item[]" value="1">
<input type="hidden" name="item[]" value="2">
PHP接收到時再用
foreach($item as $idx=>$id){
//=== SQL ===
" UPDATE table SET sort=$idx WHERE id=$id "
}
這樣來把同一階的資料重新做排序。
不過目前又碰到比較不一樣的環境,所以一次只丟一筆資訊給程式處理。
我原本的規劃是
往下(上)排序:
取得下(上)一筆(取sort比目前大(小)的第一筆)
然後下SQL將兩者的sort值對調。
剛又發現這樣如果出現sort值重複的話,會有點問題出現…
不知還有沒有什麼好方法可以做排序上的修改嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.202.164
推 dio833:什麼情況下sort會重複?要不DB中設sort為unique的index? 04/25 16:16
推 kerash:用兩個欄位做 sort? 04/25 16:38
→ JYHuang:資料從其它分類底下變動過來就有可能一樣 04/25 17:01
推 dio833:舊的sort值對新的分類應該無意義,可否考慮重訂? 04/25 17:22
推 gpmm:沒特別好的方法ˊˋ,不過我去年有在 Web_Design 板討論 04/25 17:23
→ gpmm:(還是該說是自言自語)過,有興趣可以翻一下 04/25 17:23