Hugo Egon Balder: Einzelne php Ressource für alle Fehlerseiten => Lösung

Beitrag lesen

Ich möchte mich herzlich für die Denkanstöße bedanken!

Das, wonach ich gesucht hatte, war der Index 'REDIRECT_STATUS' des $_SERVER Arrays.

Und genau das war auch der Grund, wieso mir das php Manual heute keine Hilfe war, da nämlich der Index 'REDIRECT_STATUS' im Manual nicht bei all den anderen Indices dabei steht. Deshalb kam ich vorher auch auf keine Lösung.

Erst wenn man auf der Manualseite weiter runter scrollt, findet man im Kommentarbereich den Eintrag "MarkAgius at markagius dot co dot uk 30-Aug-2011 07:18". Dort steht richtigerweise:"You have missed 'REDIRECT_STATUS', very useful if you point all your error pages to the same file."

Und darunter steht genau das, was ich gemeint hatte.

In die .htaccess kommt:

ErrorDocument 404 /fehlermeldung.php
ErrorDocument 500 /fehlermeldung.php
ErrorDocument 400 /fehlermeldung.php
ErrorDocument 401 /fehlermeldung.php
ErrorDocument 403 /fehlermeldung.php
u.s.w.

In der fehlermeldung.php steht dann für die Weiterverarbeitung:

$HttpStatus=$_SERVER["REDIRECT_STATUS"];
if($HttpStatus==400){$fehlermeldung="Die Anfrage-Nachricht war fehlerhaft aufgebaut.";}
if($HttpStatus==401){$fehlermeldung="Die Anfrage kann nicht ohne gültige Authentifizierung durchgeführt werden.";}
if($HttpStatus==403){$fehlermeldung="Die Anfrage wurde mangels Berechtigung des Clients nicht durchgeführt.";}
if($HttpStatus==500){$fehlermeldung="Dies ist ein „Sammel-Statuscode“ für unerwartete Serverfehler.";}
u.s.w.

Danke für die Antworten! Mein Problem ist somit gelöst! (Lösung getestet und es funktioniert wie gewünscht!)

MfG

Hugo Egon Balder

PS: Eines möchte ich noch anmerken: Selbstverständlich mache ich mit "if" eine Abfrage und keine Schleife. Das habe ich beim schnellen Schreiben falsch formuliert. Ich bin allerdings der Meinung, dass wenn man mich schon darauf aufmerksam macht, ein schlichter Hinweis in Form eines "Mit IF werden Abfragen gemacht, keine Schleifen!" besser, lehrreicher und vor allem freundlicher und nicht so oberlehrerhaft wie ein "if-was?" ist. Würde ich nämlich nicht von selbst wissen, was ich da falsch formuliert habe, ist ein "if-was?" keine große Hilfe. Aber danke trotzdem für den Hinweis!