Истекает страница на кнопку назад symfony2
Как мне истечь срок действия страницы после отправки формы в symfony2?
Иногда наши пользователи используют кнопку "Назад" и повторно отправляют форму. Я хотел бы проинформировать их в случае, если форма уже была отправлена, что они не должны повторно ее отправлять.
Иногда я вижу на веб-страницах, что сессия истекла (например, когда я делаю онлайн-банкинг). когда именно это должно быть реализовано? Было бы уместно иметь это в моей ситуации?
1 ответ
Простой метод, который я использую для достижения этой цели, - это своего рода переменная сеанса csrf.
Сначала добавьте переменную в сеанс после отправки формы, а затем, если при загрузке страницы появится эта переменная, вы знаете, что она нажала назад.
На размещенную пост контроллера добавьте:
$session->set('prevent_back_button', true);
И на контроллере фактической страницы формы:
if ($session->has('prevent_back_button'))
{
$session->remove('prevent_back_button');
$this->redirect('homepage');
}