|
|
|
| Читал, что обычно для такой защиты используется следующая схема:
- создается переменная сессии с уникальным значением
- к форме добавляется скрытое поле с этим уникальным значением
- в обработчике формы сверяются значения из сессии и из скрытого поля
- если все совпадает, то обновляем сессионное значение и выполняем необходимые процессы. Если нет - выдаем ошибку или что-нибудь по своему вкусу.
Но при таком подходе появляется проблема, когда пользователь открывает вторую вкладку на сайте, и форма из первой выдаст ошибку.
Подскажите, что с этим можно сделать? | |
|
|
|
|
|
|
|
для: ramundo
(25.04.2017 в 21:59)
| | Дедовский способ - редирект, после отправки формы редиректим страница саму на себя, добалвяя в URL случайный параметр, типа
<?php
if ( ! empty( $_POST ) ) {
header( 'Location: ?rnd=' . time() );
}
|
Это позволит избежать повторной отправки формы | |
|
|
|