Я искал именно то, что вам нужно, поэтому у вас есть страница:
http://example.com/page?item_id=456
, и если позже вы захотите, что если элемент отсутствует, вы будете перенаправлены на:
http://example.com/page_not_found?item_id=456
На самом деле я обнаружил, что гораздо более приемлемым решением будет просто использовать исходную страницу как страницу 404.
<?php
$item = findItem( $_GET['item_id']);
if($item === false){
//show 404 page sending correct header and then include 404 message
header( $_ENV['SERVER_PROTOCOL'].' 404 Not Found', true );
// you can still use $_GET['item_id'] to customize error message
// "maybe you were looking for XXX item"
include('somepath/missingpage.php');
return;
}
//continue as usual with normal page
?>
Так что, если элемент больше не находится в БД, страница 404 отображается, но вы можете предоставитьпользовательские элементы в сообщениях о замене или ошибках.