[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите набрость алгоритм.
iVasya
Есть 2 страницы. Главная и страница "создать тему".
На странице "создать тему" я заполняю поля, жму сабмит. Пхп скрипт обрабатывает все, что пришло постом и сохрнаяет куда-то. После этого скрипт редиректит пользователя на главную страницу.
Что в это время видит пользователь (после того, как нажал на сабмит): его редиректит на главную страницу И (!!!) на ней становится видимым блок с оповещением, типа "все хорошо, тема создана" и через пару секунд этот блок display: none.

Я хорошо представляю как все это сделать на ОДНОЙ странице. Если бы этот блок выскакивал на той же странице, на которой я и заполнял форму.
Но я не представляю как это сделать после редиректа, про который я написал выше.

Ведь если просто сделать блок на главной и скрывать его через 5 сек, то он ВСЕГДА будет появлятся на главной. А мне нужно, что бы он появлялся на главной ТОЛЬКО после того, как пользователь создал тему и его отредиректило на эту главную.

Т.е. как мне на главной странице понять, пользователь попал сюда после создания темы на другой странице (тогда нужно ему показать див с оповещением) или пользователь просто зашел на главную (тогда ему не надо показывать этот блок)?



Спустя 15 минут, 33 секунды (18.07.2012 - 17:10) Игорь_Vasinsky написал(а):
Цитата
Но я не представляю как это сделать после редиректа, про который я написал выше.


передать результат в GET URI и считать его потом

Спустя 13 минут, 15 секунд (18.07.2012 - 17:24) iVasya написал(а):
Хотелось бы не засорять урл гет параметрами. Т.е. что бы после редиректа урл выглядел как обычно: http://site.ru
Может можно в скрипте, который будет отрабатывать после сабмита на странице "создать тему" записать что-то в сессии и использовать это "что-то" как флаг для проверки? И только потом отредиректить юзера на главную. А в скрипте, который выводит главную страницу, каждый раз проверять существует такая переменная в сессиях или нет. Если да - то:
1) обнулить эту переменную, что бы потом, при простом заходе на главную не выводить блок с оповещением.
2) отдать главную страницу с яваскриптом который покажет а затем скроет этот самый блок с оповещением.
Если нет - то просто отдавать главную страницу БЕЗ яваскрипта который показывал/скрывал бы этот мой блок.

Как вам такой вариант? Или это говнокод?
Просто, хотелось бы не загрязнять урл.

Спустя 44 минуты, 3 секунды (18.07.2012 - 18:08) kamanch написал(а):
Сессиями, конечно.
Пишем в сессию флаг, потом редирект на главную.
На главной смотрим: если в сессии установлен флаг, то выводим сообщение и сбрасываем флаг.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.