Hi Jeena,
Bin jetzt gerade mal meinen Vermuten etwas weiter auf den Grund gegangen. Zuerst mal, so stellst du in der setup.php den BASEPATH fest:
$basepath = dirname($_SERVER["SCRIPT_FILENAME"]);
Es kommst also auf SCRIPT_FILENAME an. Jetzt habe ich unter Windows gerade mal in meine info.php reingeguckt, dort steht:
_SERVER["SCRIPT_FILENAME"] => C:/Server/www/htdocs/info.php
Das passt ja auch alles so weit - da dürfte dann nach deiner Methode C:/Server/www/htdocs/ bei rauskommen und wenn du da was dranhängst, z.B. admin/index.php, klappt auch alles. (PHP 4.3.10)
Jetzt mal in meine info.php5, also phpinfo() von einer mit PHP 5 geparsten Datei:
_SERVER["SCRIPT_FILENAME"] => C:\Server\www\htdocs\info.php5
Das sieht doch schon ganz anders aus - anscheinend wird bei PHP 5 irgendwie SCRIPT_FILENAME mit Backslashes bereitgestellt, wenn du an C:\Server\www\htdows\ dann ein admin/index.php dran hängst, ist ja eigentlich klar, dass da Murks bei rauskommt. (PHP 5.0.3)
Ich weiß allerdings nicht, _warum_ dem so ist - irgendjemand anderes hier, der sich damit vielleicht schon mal auseinander gesetzt hat?
Für einen Lösunsansatz habe ich mir gerade mal DOCUMENT_ROOT angeschaut:
_SERVER["DOCUMENT_ROOT"] => C:/Server/www/htdocs
Hier werden die Slashes dann anscheined richtig angegeben, dass ließe sich für einen Lösungsansatz nutzen:
$php_self = dirname(substr($_SERVER['PHP_SELF'], 1));
$basepath = $_SERVER['DOCUMENT_ROOT'] . $php_self;
Also von PHP_SELF den Slash am Anfang wegschneiden und das an den DOCUMENT_ROOT dranhängen.
MfG, Dennis.
Mein SelfCode: ie:{ fl:( br:> va:) ls:[ fo:) rl:( n4:# ss:) de:] js:| ch:{ sh:| mo:} zu:|
Dies hier ist ein öffentliches Forum - wer dir hier geholfen hat, hat dies vollkommen freiwillig und unter Aufopferung seiner Freizeit getan!