$_SERVER['PATH_TRANSLATED']
Uhfe
- php
Hallo,
kämpfe immer noch mit der Umstellung meiner Scripte vom alten auf einen neuen Server.
In einem Script benötige ich den Pfad zum aktuellen Script
Alt: $path = AddSlashes(dirname($PATH_TRANSLATED));
habe ich umgewandelt in
Neu: $path1 = AddSlashes(dirname($_SERVER['PATH_TRANSLATED']));
von wegen register_globals und so.
Leider ist $path1 aber leer. Habe bis jetzt nix gefunden, ob der Wert gesperrt werden kann.
Hat jemand einen Tip?
Gruß
Uhfe
hi,
Alt: $path = AddSlashes(dirname($PATH_TRANSLATED));
habe ich umgewandelt in
Neu: $path1 = AddSlashes(dirname($_SERVER['PATH_TRANSLATED']));
von wegen register_globals und so.
Leider ist $path1 aber leer.
hast du mal _ansatzweise_ versucht, selber herauszufinden, an welcher steller der ^fehler liegen könnte?
erst mal eine kontrollausgabe machen, um zu sehen, ob $_SERVER['PATH_TRANSLATED'] überhaupt etwas enthält.
dann mal schauen, was dirname() daraus macht; etc.
ach ja, das error_reporting hast du hoffentlich auf E_ALL stehen.
gruß,
wahsaga
Re Hi,
ja, ich habe erstmal geschaut was $_SERVER['PATH_TRANSLATED'] enthält. Nämlich nix. dirname() ist dann erstmal egal. Sorry vergaß ich zu erwähnen.
error_reporting = E_ALL
Natürlich habe ich schon gegoogled und im Archiv gesucht, aber bis jetzt nix gefunden.
Uhfe
hast du mal _ansatzweise_ versucht, selber herauszufinden, an welcher steller der ^fehler liegen könnte?
erst mal eine kontrollausgabe machen, um zu sehen, ob $_SERVER['PATH_TRANSLATED'] überhaupt etwas enthält.
dann mal schauen, was dirname() daraus macht; etc.ach ja, das error_reporting hast du hoffentlich auf E_ALL stehen.
n'abend,
Natürlich habe ich schon gegoogled und im Archiv gesucht, aber bis jetzt nix gefunden.
rtfm:
http://de3.php.net/reserved.variables
phpinfo();
verrät dir auch einiges!
weiterhin schönen abend...
Ach ja,
die anderen Server Variablen funktionieren. Jedenfalls soweit ich sie getestet habe.
Uhfe
n'abend,
In einem Script benötige ich den Pfad zum aktuellen Script
schonmal
<?php phpinfo() ?>
gemacht?
da bekommst du alle benötigten variablen angezeigt...
// voller pfad:
$absolutePath = dirname($_SERVER['SCRIPT_FILENAME']); // v1
$absolutePath = dirname(__FILE__); //v2
// relativer pfad zum doc_root
$relativePath = dirname($_SERVER['SCRIPT_NAME']);
weiterhin schönen abend...
Moin,
$_SERVER['SCRIPT_FILENAME']
liefert das gewünschte Ergebnis. Warum 'PATH_TRANSLATED' jetzt nicht geht, soll mir jetzt mal egal sein.
Thx für die Tips
Uhfe
echo $begrüßung;
// voller pfad:
$absolutePath = dirname($_SERVER['SCRIPT_FILENAME']); // v1
$absolutePath = dirname(__FILE__); //v2
Nur zur Information: Das ist nicht immer zwangsläufig das gleiche, wie ich neulich erfahren durfte.
Gegeben sei:
/dir2/dir3/datei
und /dir1, das ein Symlink auf /dir2 ist.
Das DocumentRoot zeigt auf /dir1/dir2
SCRIPT_FILENAME liefert /dir1/dir2/dir3/datei
__FILE__ liefert /dir2/dir3/datei - interessiert sich also nicht für den Symlink.
Außerdem liefert __FILE__ wenn es in einer inkludierten Datei steht deren Namen und nicht den SCRIPT_FILENAME.
echo "$verabschiedung $name";
n'abend,
Nur zur Information: Das ist nicht immer zwangsläufig das gleiche, wie ich neulich erfahren durfte.
Gegeben sei:
/dir2/dir3/datei
und /dir1, das ein Symlink auf /dir2 ist.Das DocumentRoot zeigt auf /dir1/dir2
SCRIPT_FILENAME liefert /dir1/dir2/dir3/datei
__FILE__ liefert /dir2/dir3/datei - interessiert sich also nicht für den Symlink.
sehr interessant... vorallem da die nächste version meines systems verstärkt mit symlinks arbeiten soll... danke für den hinweis
Außerdem liefert __FILE__ wenn es in einer inkludierten Datei steht deren Namen und nicht den SCRIPT_FILENAME.
ist mit bewusst, aber da ich nicht wusste welchen pfad er will.. hab ich halt mal beide angegeben... ;)
weiterhin schönen abend...