我有一個表dislikes
它包含兩列,idone
和idtwo
。SQL布爾關係
這些是來自用戶的唯一ID,例如:
| idone | idtwo |
-----------------
| 5 | 4 |
這意味着,與id=5
用戶不喜歡用戶與id=4
。我在PHP中有一個數組,其中包含當前用戶選擇不喜歡它們的所有用戶的ID。
所以說dislikes={1,2,3}
,這意味着當前用戶不喜歡用戶1,2或3.數據庫中有未知數量的用戶。
因此,如果用戶1選擇不喜歡用戶2和用戶3(這是通過HTML下拉菜單完成的),我會將dislike={2,3}
傳遞給處理此數據的PHP頁面。
我想PHP頁面然後添加條目(1,2)
和(1,3)
。這是第一個問題,我如何才能確保只添加唯一條目?
也說,用戶1改變了他不喜歡的用戶2.然後我通過dislike={3}
到PHP頁面,並必須以某種方式刪除所有條目(1,!3)
,即所有條目,其中用戶1不喜歡任何人,除非用戶3.我怎樣才能事實做到這一點?或者,還有更好的方法?
顯示你的代碼...你試了什麼?聽起來不那麼難... – djot
我們在說多少用戶?你能不能總是將完整的不喜歡列表傳遞給php頁面,然後可以刪除該用戶的所有當前記錄,然後添加新的? – Steve
您有幾個選項... 1.刪除所有內容(用戶依賴)並重新寫入當前有效。 2.使用(如已經建議的)'REPLACE INTO'。 3.「INSERT INTO ... ON DUPLICATE KEY UPDATE」...也許還有其他一些選項我錯過了...... – djot