Как избежать исполнения php при обновлении страницы?
К примеру при переходе на страницу /checkout отрабатывает конроллер, добавляющий в базу ордер. Но... Если страницу обновить, в базу добавится ещё один ордер. Как принято делать это правильно, чтобы не было таких проблем? Спасибо.
Вопрос не совсем корректен. Если ордер один, добавляйте и делайте редирект на любую другую страницу (например страница успеха заказа). Если это типо корзины и может быть много ордеров, сохраняйте все в сессию и при клике "подтвердить заказ" добавляйте массово в БД, и далее очищайте сессию (т.е корзину) и делайте редирект.
Во-первых, привязать order к ip/id юзера и проверять добавлен ли с таким id/ip
Во-вторых, направлять на страницу с заранее заготовленным токеном, который удаляется, если ордер был добавлен
В-третьих, не добавлять order при переходе на рабочую страницу