[英]php checkbox update, insert, delete mysql records
我已經搜索了很多,但是似乎沒有出現什么奇怪的事情,因為我認為這很容易實現。 基本上,我有一個用戶選擇的項目列表,我要做的是根據基本上在以下情況下選中的復選框來更新數據庫中的值:
復選框數組中分配的ID已存在於數據庫中,無需進行任何操作,也可以使用相同的值進行更新。
需要將復選框數組中分配的ID添加到數據庫中。
未在復選框數組中分配的ID ISN,因此必須從數據庫中刪除。
有沒有人得到與他們一起工作的任何代碼,這樣做嗎?
該表很簡單,其中有兩處要更新:
id_text和id_product
來自$ _POST的數組是:
Array ( [text] =>
Array ( [0] => 8 [1] => 1 [2] => 2 ) // the values that need to be inserted, updated, or deleted if they don't exist here.
[textValue] => ALL OF THEM
[id] => 33 // the 'id_product value'
[update] => update )
沒錯,沒有任何代碼或數據庫的擁擠很難幫助,但是如果我理解正確的話,您可以:
刪除所有ID不在您的數組中的項目。 您可以選擇帶有“中”的那些:
... id_product不在(1,3,5,8)中的位置...
您可以通過使用輕松生成此
$ idCondition ='id_product NOT IN('。implode(',',$ yourArrayName)。')';
關於REPLACE:
http://dev.mysql.com/doc/refman/5.1/de/replace.html
關於IN:
http://www.webdevelopersnotes.com/tutorials/sql/tutorial_mysql_in_and_between.php3
編輯:我只是意識到,有些人可能對我對REPLACE的定義有異議。 REPLACE實際執行的操作是刪除該行(如果已存在),然后執行INSERT。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.