if URL

$_SERVER["SCRIPT_NAME"]
$_SERVER["PHP_SELF"]

liefert dir den Pfad von der DOCUMENT_ROOT aus.

den HOST findest du per
$_SERVER["HTTP_HOST"]
 
Zuletzt bearbeitet:
ok. soweit funktioniert das. Nur gibt es jetzt ein Problem.

Ich habe es so:
PHP:
$host  =  $_SERVER["REQUEST_URI"];
if($host == "/dsnv2/index.php") { echo "<br /><div style='margin-top:11px'><a style='margin-left:8px' href=\"index.php?referenz=1&amp;info=".$info."&amp;news=".$news."\"><img src='image/buttom.png' /></a></div>"; };

Wenn ich die Seite über dsnv2/index.php aufrufe, wird der Link perfekt angezeigt. Sobald ich ihn dann aber anklicke, wird er nicht mehr angezeigt, da aus dem index.php ja ein index.php?referenz=.... wird. Kann ich das irgendwie machen, dass der Teil ignoriert wird, dass also nur der Teil bis zum .php überprüft wird?
 
Du müsstest nur den URL-Pfad herausfiltern, beispielsweise:
PHP:
$_SERVER["REQUEST_URI_PATH"] = preg_replace('/\?.*/', '', $_SERVER["REQUEST_URI"]);
 
SCRIPT_NAME enthält allerdings den Dateisystempfad zur aufgerufenen Datei und nicht den URL-Pfad. Wenn sich also mal der URL-Pfad, nicht aber der Dateisystempfad ändern, bekommst du Schwierigkeiten.
 
ja. Aber da ich nicht vor habe, den Pfad zur Datei zu ändern, ist dies ja eigentlich egal.

Hab es gerade mal zum testen mit
PHP:
$_SERVER["REQUEST_URI_PATH"] = preg_replace('/\?.*/', '', $_SERVER["REQUEST_URI"]);
versucht, hat jedoch nicht funktioniert. Ich habe im Pfad nur die Datei angegeben, und dann wurde das echo allerdings nicht angezeigt.
 
Zurück