@semki096

Как избежать исполнения php при обновлении страницы?

К примеру при переходе на страницу /checkout отрабатывает конроллер, добавляющий в базу ордер. Но... Если страницу обновить, в базу добавится ещё один ордер. Как принято делать это правильно, чтобы не было таких проблем? Спасибо.
  • Вопрос задан
  • 151 просмотр
Пригласить эксперта
Ответы на вопрос 2
mzcoding
@mzcoding
Web-Разработка
Вопрос не совсем корректен. Если ордер один, добавляйте и делайте редирект на любую другую страницу (например страница успеха заказа). Если это типо корзины и может быть много ордеров, сохраняйте все в сессию и при клике "подтвердить заказ" добавляйте массово в БД, и далее очищайте сессию (т.е корзину) и делайте редирект.
Ответ написан
Комментировать
AleksandrB
@AleksandrB
Совсем недавно вывел "Hello world"
Во-первых, привязать order к ip/id юзера и проверять добавлен ли с таким id/ip
Во-вторых, направлять на страницу с заранее заготовленным токеном, который удаляется, если ордер был добавлен
В-третьих, не добавлять order при переходе на рабочую страницу
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы