我有一个看起来像这样笨更新记录
$data_gallery = array(
'order' => $value
);
$this->db->where('order', $newOrder);
$this->db->update('gallery', $data_gallery);
我不得不说,5张图片我已经reorderd的更新记录。我有他们的旧位置和新的位置。
但是当我循环他们时,有时会互相覆盖。
实施例:
5图像1,2,3,4,5
我改变顺序在循环2,1,3,4,5
我更新,因为它去通过新秩序阵列。
Update order = 2 where order = 1
Update order = 1 where order = 2
很明显,第二个从来没有被击中,因为order = 2不再存在。
我想这比逻辑问题更重要。
任何想法如何轻松地循环和更新,而不会丢失一些数据?我虽然可能在批量操作中更新,但并没有得到很大的帮助。
在此先感谢。
为什么要更新订单WHERE订单?也许最好使用记录ID,而不是? – sinisake