Опубликовать данные и обновить страницу

У меня есть страница редактирования формы для редактирования моих сообщений на сайте. Он использует метод post на той же странице. Если форма скомпилирована правильно, отображается сообщение congrats.

Проблема:

Когда пользователи нажимают кнопку обновления, скрипт пытается повторно отправить данные на страницу. Есть ли способ избежать этого?

благодаря

Лука

Solutions Collecting From Web of "Опубликовать данные и обновить страницу"

Общая схема шаблона PRG такова:

if ( $_SERVER['REQUEST_METHOD'] == 'POST' ) { /// do your magic $_SESSION['error'] = "Thanks for your message!"; // this should be the full URL per spec, but "/yourscript.php" will work $myurl = ...; header("Location: $myurl"); header("HTTP/1.1 303 See Other"); die("redirecting"); } if ( isset($_SESSION['error']) ) { print "The result of your submission: ".$_SESSION['error']; unset($_SESSION['error']); } 

Вам нужно использовать шаблон PRG .

Это называется шаблоном Post / Redirect / Get . Вы делаете это, отвечая на запрос POST с помощью перенаправления 302/303, что предотвращает это неприятное поведение на клиенте.

Вы можете узнать больше об этом в приведенной выше ссылке.