Духовность™
Продвинутый новичок
Как вы делаете вывод информативных сообщений после POST-а?
Возникла задача грамотно реализовать метод передачи пользователю информации о прошедшем действии. Например, есть у нас некий набор скриптов, который что-то делает с пользовательскими данными. После каждого действия необходимо информировать пользователя о результатах.
Проблема заключается в том, что после POST-запроса нужно делать редирект, что бы предотвратить F5-симптом. Соответственно, как-то нужно передавать в скрипт сообщение..
Пока вижу 3 решения:
1. Передавать при Location в GET id сообщения, который вывести на следующий странице. Сами сообщения писать в БД. Писать именно при каждом действии, ибо в самих сообщениях будут присутствовать уникальные данные, например:
2. Аналогично, но передавать ID в cookie.
После первого показа сообщения, удалять его из БД (и удалять куки, если метод 2).
3. Делать промежуточную страницу, на которой выводить что-то вроде:
Что ещё посоветуете?
Возникла задача грамотно реализовать метод передачи пользователю информации о прошедшем действии. Например, есть у нас некий набор скриптов, который что-то делает с пользовательскими данными. После каждого действия необходимо информировать пользователя о результатах.
Проблема заключается в том, что после POST-запроса нужно делать редирект, что бы предотвратить F5-симптом. Соответственно, как-то нужно передавать в скрипт сообщение..
Пока вижу 3 решения:
1. Передавать при Location в GET id сообщения, который вывести на следующий странице. Сами сообщения писать в БД. Писать именно при каждом действии, ибо в самих сообщениях будут присутствовать уникальные данные, например:
Код:
Изменения успешно сохранены
Данные администратора [b]Петя83[/b] успешно изменены.
После первого показа сообщения, удалять его из БД (и удалять куки, если метод 2).
3. Делать промежуточную страницу, на которой выводить что-то вроде:
Код:
Изменения успешно сохранены
Данные администратора [b]Петя[/b] успешно изменены.
Переадресация на модуль «[u]управления администраторами[/u]» произойдет через несколько секунд.
Что ещё посоветуете?