Создание надежной системы Flash / обратной связи

Существует множество потоков, рассказывающих о том, как реализовать простую систему обратной связи с пользователями / флеш-сообщений, чтобы сообщать пользователям информацию, такую ​​как «неверный пароль», «сохраненные настройки», «новая тема опубликована» и так далее. Это довольно просто, используя

$_SESSION['message'] = "feedback message";

А затем получить этот ключ сеанса на следующей перенаправленной странице. Однако рассмотрим такой сценарий: пользователь отправляет новую ветку на сайт website.com/philosophy, но ему не удалось ввести капчу, и после обработки формы она сохраняет

 $_SESSION['message'] = "Invalid captcha";

И начинает перенаправлять пользователя обратно на website.com/philosophy, откуда он пытался опубликовать. Теперь представьте, что сервер или его соединение немного отстают во время этого перенаправления, и пользователь тем временем открывает website.com/philosophy в другом браузере TAB. Теперь там будет отображаться «неверная капча», когда она должна отображаться только на вкладке, работающей с перенаправлением.

Как вы можете надежно отображать сообщение только в том случае, если оно соответствует исходной странице перенаправления?

1

Решение

Учитывая отсутствие ответов, я скажу, лучшая идея, которую я мог придумать.

Я буду делать флеш-сообщения как на основе времени, так и на основе страниц, а не просто на основе страниц.

В этом случае, если пользователь создает новую ветку на веб-сайте website.com/philosophy и обновляет несколько экранов website.com/philosophy, он получит сообщение с сообщением обо всех, а не только 1, в течение короткого действительного периода. и может даже составлять сообщения, так что если он попытался дважды опубликовать сообщение с веб-сайта website.com/philosophy и оба раза потерпели неудачу, он получил бы два сообщения, в которых не удалось выполнить две попытки публикации, вместо того, чтобы рисковать тем, что сообщения будут на самом деле заменены на разные сообщения (что может произойти, если перенаправление первого сообщения заняло больше времени, чем перенаправление второго сообщения)

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]