Ben kullanıcıların öğeleri yeniden düzenleyerek bir şey üzerinde çalışıyorum ve daha sonraki bir zamanda, bu öğeler seçilen sırayla görüntülenen gerekir. Basit bir örnek olarak, öğelerin bir listesini göz önünde bulundurun:
A, B, C, D, E, F, G.
The MySQL table would be something simple: user_id, letter, sortnumber
Kullanıcı artan adımlarla sırasını değiştirmek için izin verilir. Onlar Buna ek olarak, öğeleri ekleyebilir ve kaldırabilirsiniz, vb başına, sonra D, G bir hareket olabilir. Böylece C, silebilir veya bu adımların her birinde X ekleyebilir, bunu işlemek, ve MySQL öğeleri ayarlamak, hangi PHP veri gönderebilir.
Ben bu konuda gidiş görmek iki yolu vardır:
- Each time they add/remove/reorder something, send the entire list to PHP, delete all the data they previous had in there, and just insert the new list. Problem is, this is a lot of deletions/insertions each time they do anything. They might move A to after B, and then suddenly I delete 7 records, and insert 7 more. On the plus side, it's dead simple.
- Her bir "hareket" Onlar (örn: bir eklenti ya da bir kaldır, ya da bir sipariş) yapmak, bunun için bilgi göndermek. EG, onlar F sonra A taşındı, ve ben şimdi sonra A ve (F dahil) F arasındaki tüm "sortnumber" azaltma var, A ve F hem de listede var olduğunu kontrol etmek gerekir "F sonra hareket bir" söyle. Onlar "Z sil" derseniz onu silmek, listede bulmak zorunda, ve ondan sonra tüm kayıtları sortnumbers azaltma.
Ben sadece merak ediyorum ... Herkes nerede sipariş konularda bir şey ile uğraşmak zorunda kaldı, ve eğer öyleyse, bu konuda nasıl gitti?