У меня есть веб-сайт, созданный на PHP, где каждый раз, когда пользователь получает ошибку, я перенаправляю его на другую страницу (используя header(Location:...)
) и помещаю идентификатор ошибки в URL, чтобы я знал, какую ошибку отображать.
например. Если пользователь пытается получить доступ к странице продукта, но этот элемент больше не доступен, я перенаправлю обратно к категории элементов, на которые он ранее смотрел, и выведу сообщение об ошибке на основе идентификатора ошибки, указанного в URL.
www.example.com / view_category.php? Product_category_id = 4 & ERROR_ID = 5
В этом подходе мне не нравятся две вещи:
- Отображает error_id в URL.
- Если страница обновлена, ошибка все равно будет отображаться.
Есть ли способ аккуратно удалить определенную переменную $ _GET из URL, оставив остальные переменные нетронутыми ПОСЛЕ загрузки страницы?
Я думаю, что, возможно, он использует modRewrite или перенаправление назад на саму страницу, но удаляет error_id из URL или использует переменную $ _SESSION и избегает помещения error_id в URL. Ваши мысли?
Я действительно многому учусь у этого сообщества и подумала, что, если я задам вопрос, я смогу узнать что-то новое или получить различные идеи, поскольку я довольно новичок в написании сценариев.