2012-10-15 169 views
0

我一直在尋找一種方法來做一些事情,我確信我一直在使用錯誤的搜索條件來尋找解決方案......所以,我就是這樣。reorder array-table row and update database

我在內容管理系統中有一個下拉菜單,當新頁面被創建或位置被編輯時,數據庫被更新爲新的或編輯的值......這一切都很好。

但是,我想要做的是......當頁面位置的數字從我們說的位置5改變到位置1時......前面的位置編號1改變爲位置編號2。 ...並且任何剩餘頁面的每個位置編號都相應地重新編號。所以,我的問題是,我如何更新我的數據庫,每當我在下拉菜單中更改頁面的位置,所有位置值得到,我不知道,一個+1 ...或某事...此外,不允許兩個位置值是相同的...你知道,只能有一個...

在此先感謝...希望我沒有做太糟糕的解釋什麼我想這樣做:-)

+0

你可以發佈你迄今爲止的嘗試嗎? – jrd1

+0

到目前爲止jrd1,我一直在尋找一種方法來做到這一點......我還沒有嘗試過任何東西......我似乎無法得到我想要做的正確搜索標準......它只是看起來像我想要做的是這麼簡單......但正如我學習PHP,簡單很少回答...... –

回答

0

你有沒有嘗試過這樣的:

UPDATE my_table SET position=position+1 WHERE position>2 AND position<5 

的where語句壽ld是新的職位&你剛剛更新的職位

+0

......謝謝,但我的更新不只是位置...這裏是顯示我的網頁更新部分代碼... '如果(空($錯誤)){ \t $查詢=「更新網頁上設置 \t \t MENU_NAME = '{$ MENU_NAME}', \t \t position = {$ position}, \t \t visible = {$ visible}, \t \t含量= '{$內容}', \t \t pg_desc = '{$ pg_desc}', \t \t pg_keywords = '{$ pg_keywords}' \t WHERE ID = {$ ID}「; $ result = mysql_query($ query);' –