404-pagina in een bestandsgebaseerd PHP-framework
Als een gebruiker een ongeldige URL intoetst in de adresbalk moeten we een pagina met een foutmelding tonen. Laat de inhoud van de foutpagina opgeslagen zijn in het bijbehorende bestand:
<div>
pagina niet gevonden
</div>
Om de ongeldigheid van het verzoek te bepalen, moeten we controleren of het inhoudsbestand dat overeenkomt met de opgevraagde URL bestaat:
<?php
$path = 'view' . $url . '.php';
if (file_exists($path)) {
// bestand bestaat
} else {
// bestand bestaat niet
}
?>
Laten we het inhoudsbestand terugsturen, als het bestaat, en het foutbestand, als de inhoud niet bestaat:
<?php
$path = 'view' . $url . '.php';
if (file_exists($path)) {
$content = file_get_contents($path);
} else {
$content = file_get_contents('view/404.php');
}
?>
In het geval van een fout moeten we een
header met 404 fout naar de browser sturen, om
expliciet te melden dat de pagina niet is gevonden.
Laten we dit doen:
<?php
$path = 'view' . $url . '.php';
if (file_exists($path)) {
$content = file_get_contents($path);
} else {
header('HTTP/1.0 404 Not Found');
$content = file_get_contents('view/404.php');
}
?>
Implementeer in jouw framework het terugsturen van een pagina
met een 404 fout.