В codeigniter, как вы знаете, страница формы: /class/function/ID
, где class - это имя контроллера, function - это метод внутри контроллера, а ID - параметр для передачи этому методу.
Типичное использование (например, для сайта книги) - передать идентификатор книги в функцию, которая затем запросит базу данных для соответствующей книги. Моя проблема заключается в следующем: я возился и случайно (в строке URL) набрал идентификатор, которого нет в базе данных (при обычном просмотре по точке и щелчку это никогда не произойдет), и я получаю ошибки базы данных из-за остаточных запросов Я пытаюсь выполнить, используя несуществующий идентификатор.
Я написал код, чтобы проверить, есть ли какие-либо строки, возвращенные перед попыткой использовать идентификатор, но если идентификатор не существует, я бы хотел, чтобы пользователь получил страницу с ошибкой 404, а не пустую страницу или что-то еще ( это похоже на правильную функциональность). Это должна быть настоящая страница 404 (а не просто загрузка представления, похожего на страницу 404), чтобы не связываться с поисковыми системами. Итак, мой вопрос таков: в рамках нормального логического потока программы (как описано выше), как я могу форсировать ошибку 404, используя codeigniter? Спасибо.
Обновление : воспламенитель кода имеет функцию show_404('page')
, но я не думаю, что это приведет к ошибке HTTP 404 ...