Mailinglisten-Archive | 
Hallo Steffen,
Danke für die superschnelle Antwort.
> Hast du beachtet, dass der Pfad zu einer Datei, die aus einer bereits über 
> require eingebundeten Datei nicht von der eingebundeten ausgeht, sondern 
> von der aufgerufenen Datei.
> 
> Beispiel:
> 
> /seite1.php:
> require_once("inc/include1.php");
> 
> /inc/include1.php: (/inc/include2.php einbinden)
> require_once("include2.php");
> 
> wird nicht gehen, da es in dem Verzeichnis / keine include2.php gibt, 
> sondern im Verzeichnis inc - daher müsste es heißen: require_once
> ("inc/include2.php");
Tja, aber genau das ist der Fall. Der originale Code (auf der 
Entwicklermaschine) ist eben so aufgebaut, wie auch Du empfiehlst. Also 
immer ausgehend von der ersten Verzeichnisinstanz, weil ja alle weiteren 
Datei aus Unterordner bezogen werden.
Nur... auf dem Zweitrechner, dessen einziger Unterschied eben eine 
andere PHP-Version ist (4.3.2) läuft es nicht. Im Gegenteil: Genau das, 
was eigentlich nicht laufen dürfte, geht. Beispiel:
index.php ruft im Unterverzeichnis /inc/ eine Datei auf
require_once("inc/datei1.inc.php");
datei1.inc.php ruft anschließend datei2.inc.php auf, die im gleichen 
Unterverzeichnis liegt. Auf der Entwicklermaschine läuft es mit dem 
korrekten Code:
require_once("inc/datei2.inc.php");
Auf dem Zweitrechner wird die Datei komischerweise erst geladen, wenn 
der Aufruf lautet:
require_once("datei2.inc.php");
Um ehrlich zu sein. Ich verstehe das nicht ganz und bin bisher auch im 
Internet nicht fündig geworden...
Gruß
Carsten
    php::bar PHP Wiki - Listenarchive