PHP - Как избежать повторной отправки формы (POST запрос при нажатии F5)

Общая идея состоит в том, чтобы:

  • Проверить пришёл ли POST запрос, если да:
    1. - то обработать пришедшие данные
    2. Записать данные отчёта об обработке (если таковые есть), которые надо вывести на странице (например "об успешности сохранения сообщения") в какое-либо иное хранилище (например в сессию - часто тут удобно использовать механизм одноразового чтения таких данных)
    3. Отредиректить страницу на тот же адрес
  • Если же запроса нет (после редиректа его, кстати, не будет):
    1. Проверяем сессию (или ваше хранилище) - если там есть уведомление о последнем обработанном запросе, то выведем это сообщение.
    2. Нажмите F5 - браузер уже не спросит о повторной отправке =)