У меня есть таблица sql со статьями в ней. Я сохранил порядок статей в поле INT в sql.
С помощью столбца ajax из (перетаскивания) UI, я получил массив с целыми числами (новый порядок).
пример:
Старый заказ: 2,1,3,4
Новый порядок должен быть: 2,1,4,3
PHP:
PHP/MySQL Обновление порядка
$i = 1;
foreach ($inputarray as $var) :
if ($i != $var) :
$this->_sqli->query("UPDATE articles
SET artorder=$i WHERE artorder = $var and pagesid = $pagesid");
endif;
$i++;
endforeach;
Проблема: когда я пытаюсь поменять элементы, они будут одинаковыми. Таким образом, результат предыдущего примера будет: 2,1,4,4 Как мне обновить свой sql?
У меня получился тот же результат. :( – appl3r
Да, я просто понял, в чем проблема. Используя ваш пример, на третьей итерации он меняет artorder на 4 из 3 - так что есть две строки wth artorder = 4. На 4-й итерации он изменяет все значения artorder От 4 до 3 :(Doh! Есть ли другой способ однозначно ссылаться на строки, отличные от artorder? Я думаю, вам понадобится это, чтобы избежать проблемы с обновлением того же столбца, который вы используете для выбора. –
Я собираюсь попробовать его с идентификатором , благодаря. – appl3r