Я нашел много сайтов, которые описывают PRG, но простой пример кода PHP.
Вот что я реализовал:
-
form.php
имеет действие:validate.php
. - Пользователь
validate.php
никогда не видит; если проверяет все$_GET
и, если действительный записывает его в базу данных и генерирует HTML-страницу подтверждения, если она не действительна, она генерирует HTML-страницу с ошибкой, объясняя, что не так. - Какой бы HTML-код не генерировался, он сохраняется в переменной
$_SESSION
, а затемvalidate.php
вызываетheader('Location: <as appropriate>);
. -
submitted.php
ofinvalid_input.php
(в случае, если пользователь читает URL-адрес) состоит только изecho $_SESSION['form_html'];
.
Мне кажется, что это защита от проблем с перезагрузкой страницы и обратной кнопкой.
Неужели я попытался изобрести колесо?