php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2007

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 13.08.2007, 00:08  
Erfahrener Benutzer
 
Registriert seit: 14.07.2005
Beiträge: 118
saibot
Standard Eigene Error404-Seite -> Fehlerursache/Datei finden

Hallo,

ich habe mir mit einer .htaccess-Datei meine eigenen Fehlermeldungen definiert:

CheckSpelling Off
ErrorDocument 404 http://www.meineseite.de/index.php?site=error&nr=404

Funktioniert soweit auch einwandfrei. Nur würde ich gerne wissen, welche Seite nicht gefunden wurde. Der Referer is immer leer, und in der Adresszeile steht ja dann nichtmehr die aufgerufene URL sondern eben der in der htaccess angegebene Link.

Gibt es eine Möglichkeit, trotzdem herauszufinden welche Adresse aufgerufen wurde?
saibot ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 13.08.2007, 00:29  
Erfahrener Benutzer
 
Registriert seit: 07.07.2005
Beiträge: 150
sysop
sysop eine Nachricht über ICQ schicken
Standard

der entsprechende aufruf sollte in der variablen $_SERVER['REQUEST_URI'] liegen.
__________________
gruss sys
sysop ist offline  
Alt 13.08.2007, 00:44  
Erfahrener Benutzer
 
Registriert seit: 14.07.2005
Beiträge: 118
saibot
Standard

Hmm nein, da steht nur /index.php?site=error&nr=404 drin
saibot ist offline  
Alt 13.08.2007, 00:56  
Erfahrener Benutzer
 
Registriert seit: 14.07.2005
Beiträge: 118
saibot
Standard

HAbe die Vermutung dass ich nicht mit http:// verlinken darf. Werds mir morgen abend nochmal anscheuan
saibot ist offline  
Alt 13.08.2007, 12:14  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Das kann gut sein mit dem http://.
Als ich mir das gebastelt hatte, hatte ich kein Problem herauszufinden, welche Seite angefordert wurde, einfach mal var_dump($_SERVER) machen.
Zergling-new ist offline  
Alt 13.08.2007, 17:52  
Erfahrener Benutzer
 
Registriert seit: 14.07.2005
Beiträge: 118
saibot
Standard

Hattest du auch die direkte Adresse mit http angegeben?

Wenn ich eine relative Adresse, also nur

ErrorDocument 404 /index.php?site=error&nr=404

schreibe, funktioniert es mit der Übergabe der aufgerufenen Adresse. Dafür habe ich jetzt ein großes Problem, wenn ein nicht existierender Unterordner aufgerufen wird, da die Fehlerseite dann in diesem falschen Ordner aufgerufen wird:

http://www.meineseite.de/falscherordner/index.php?site=error&nr=404

Habe das http nochmal rein gemacht und dann wie vorgeschlagen das $SERVER Array angeschaut, aber da steht nicht die aufrufende Adresse drin die ich suche
saibot ist offline  
Alt 13.08.2007, 18:38  
Erfahrener Benutzer
 
Registriert seit: 14.07.2005
Beiträge: 118
saibot
Standard

Muss mich korrigieren: Die Fehlerseite wird schon im richtigen Ordner aufgerufen. Da aber in der Adresszeile des Browsers dann die aufrufende, falsche Adresse steht, baut meine Seite natürlich auch auf dem falschen Ordner auf, da relative Links verwendet.

Weiss jemand ne Möglichkeit, ohne Angabe der kompletten Adresse trotzdem immer sicherzustellen, dass die Verlinkungen vom Root-Verzeichnis aus aufgerufen werden?

Hab mir jetzt mal damit beholfen, die "/" im $_SERVER["SCRIPT_URI"] zu zählen, um dann das root-verzeichnis direkt verlinken zu können wenn es Unterordner (und somit mehr als 3 "/" ) in der Adresse gibt. Aber schön ist das nicht
saibot ist offline  
Alt 13.08.2007, 22:45  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Hallo,
so oder so solltest du dir einige Konstanten zusammenbasteln, die dir aus einer (zB) global.php im Projektroot mit dirname(__FILE__) und $_SERVER['DOCUMENT_ROOT'] den Projektpfad ermitteln, damit du nicht auf relative Pfade angewiesen bist. Relative Pfade reichen einfach nicht immer aus und absolute sind bei Fehlern schneller zu debuggen.
Zergling-new ist offline  
Alt 13.08.2007, 22:53  
Erfahrener Benutzer
 
Registriert seit: 14.07.2005
Beiträge: 118
saibot
Standard

Dank PHP ist das ja kein Thema vor die Adressen noch die Domain zu setzen wenn man sie einmal deklariert hat

hätt ich eigentlich von Anfang an so machen können
saibot ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
CURL in Seite einloggen und einen Teil parsen Matt PHP Tipps 2008 8 03.09.2009 22:30
Krieg kein Objekt zurück auf includeter Seite NONNNNN PHP Tipps 2008 5 28.03.2008 19:25
Eintrag in DB und Wechsel zu anderer Seite Darson PHP Tipps 2008 25 14.01.2008 16:46
Seite nicht mehr gültig Igäl PHP Tipps 2006 3 25.05.2006 16:08
[Erledigt] Wetten automatisch von anderer Seite beziehen PHP Tipps 2006 11 03.03.2006 09:09
Formular - Daten für nächste Seite behalten NetLook PHP Tipps 2007 7 18.11.2005 13:21
Frame schließen und Eigene Error404-Seite -> Fehlerursache/Datei finden workaholic HTML, Usability und Barrierefreiheit 2 06.09.2005 13:36
Mit post an weitere Seite oder 2 Seiten übergeben? PHP Tipps 2005 1 02.02.2005 12:16
Neue Seite an einer bestimmten Stelle aufrufen PHP Tipps 2005 3 13.01.2005 10:09
blätterfunktion-limit-letzte seite PHP Tipps 2004-2 2 20.12.2004 23:56
Eine 2te Seite auto matisch in neuem Fenster laden PHP Tipps 2004 4 25.08.2004 14:10
[Erledigt] Tabelle auf einer Seite auslesen und in meiner Seite wiederg PHP Tipps 2004 2 14.07.2004 08:46
"NEWS-SCRIPT" in eine Seite einbinden: Aber wie ? PHP Tipps 2004 2 03.07.2004 16:33

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
eigene php 404 seiten mit post von der datei, php datei error 404, eigene 404 seite wird nicht aufgerufen, global errordoc php

Alle Zeitangaben in WEZ +2. Es ist jetzt 15:49 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.