404-side i en filbaseret motor i PHP
Hvis en bruger indtaster en ukorrekt URL i adresselinjen, skal vi vise en side med en fejl. Lad indholdet af fejl-siden opbevares i den tilsvarende fil:
<div>
side ikke fundet
</div>
For at kunne afgøre om anmodningen er ukorrekt, er vi nødt til at kontrollere eksistensen af indholdsfilen, der svarer til den anmodede URL:
<?php
$path = 'view' . $url . '.php';
if (file_exists($path)) {
// filen eksisterer
} else {
// filen eksisterer ikke
}
?>
Lad os sende indholdsfilen, hvis den eksisterer, og fejlfilen, hvis indholdet ikke eksisterer:
<?php
$path = 'view' . $url . '.php';
if (file_exists($path)) {
$content = file_get_contents($path);
} else {
$content = file_get_contents('view/404.php');
}
?>
I tilfælde af en fejl skal vi sende en
header med en 404 fejl til
browseren for eksplicit at meddele,
at siden ikke blev fundet.
Lad os gøre det:
<?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');
}
?>
Implementer udlevering af en side
med en 404 fejl i din motor.