我有很多东西。它们可以被分类。当用户将一个对象“拖拽”到一个组中时,我将一条记录插入到数据库中

INSERT INTO t1
  (group_id, item_id, project_id, user_id)
VALUES
  ($groupID, $itemID, $projectID, $userID)

同一组中可以有多个对象,这些对象可以从一个组移动到另一个组。当我将对象移动到另一个组中时,我不需要创建另一个记录,而只需要更新组id。
编辑:
我想我还是要做这样的事:
table structure
t1.id
t1.group_id
t1.item_id
t1.project_id
t1.user_id

if ("SELECT id, group_id FROM t1
   WHERE item_id = $itemID
   AND project_id = $projectID
   AND user_id = $userID")) {

   // if found
   UPDATE t1
   SET group_id = $groupID
   WHERE id = $ID

} else {

   INSERT INTO t1
   (group_id, item_id, project_id, user_id)
   VALUES ($groupID, $itemID, $projectID, $userID)

最佳答案

从一个组移动到另一个组以仅更新正在移动的对象时,听起来应该放置if语句。例如,如果我从对象的初始(开始)空间中选择一个对象,我将添加insert语句。如果要移动已分组到另一个组的对象,我将添加一个update语句。最后,如果我从所有组中完全取出一个项,我将发出delete语句,从表中删除该对象。

pseudo code

if object = new
{
INSERT INTO t1 (group_id, item_id, project_id, user_id)
VALUES ($groupID, $itemID, $projectID, $userID)
}
if object = group
}
UPDATE t1
SET group_id = $newgroupID
WHERE item_id = $itemID;
}
if object = banned
}
delete from t1 where item_id = $itemID
}

此代码序列应放置在要将对象拖到的每个容器上,以便它可以检查正确的需求。

关于php - 逻辑帮助,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5924574/

10-10 02:42