0

我在 db 中排序项目时遇到问题。我在 db 中有列“位置”,它没有唯一值。根据这个专栏,我在我的页面上订购物品。

我可以通过 jqueryui 中的 sortable() 更改项目(li 元素)的顺序。

我当前问题的示例是:

$value (ex.) = 0 1 2 3 4 6 5
$i (I think) = 0 1 2 3 4 5 6
result       = 0 1 2 3 4 5 5  

我不明白为什么它将最后一个位置值设置为 5 而不是 6。其他位置也是如此。

以下是我当前的代码。

// update order of items in list
// i initialize
$i = 0;

// convert array (item[]=1&item[]=2) to separate items
foreach ($_POST['item'] as $value) {
    // Execute statement:
    $affected = $database -> update ('items',
    [ 'position' => $value ], // SET (set id as $i which is increasing for each value)
    [ 'position' => $i ] // WHERE
    );
$i++;
}

// if everything ok then send 'success'
if ( $affected ) {
    die('success');
};
4

0 回答 0