Moses Fender, у меня никаких загвоздок с этим вопросом нет. Я просто не могу понять, зачем сессию в этом случае использовать, если можно сделать всё при помощи ajax. И также используя jquery или js показать или ошибки в модальном окне или сообщение об отправке письма.
Сессии в данном случае не нужны. Если конечно у Вас форма не из нескольких шагов состоит.
slip31, а это уже дело запроса к базе. У Вас будет старое значение (oldAttribute) и новое значение для пункта меню. Если Вы меняете двойку на тройку, то сначала обновляете существующую двойку, присваиваете ей третий номер, а потом уже записываете новое значение.
slip31, получается, что для старого второго пункта Вы должны увеличить значение на 1, а для старого третьего записать новое значение 2 и обновить в базе данные только для этих двух пунктов.
slip31, как я понял Вас.
Вам надо отдельное поле, в котором будет храниться порядковый номер пункта меню. Правильно?
Если да, то значения этого поля должны идти по порядку - 1,2,3,4,5,6...10. Уникальность здесь не нужна.
Для второго сообщения так же.