kostenloser Webspace werbefrei: lima-city


Befehl für PHP gesucht

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    n********r

    Hi,

    ich suche für PHP den Befehl, der mir ausgibt, wie die aktuelle URL lautet wo ich gerade bin.
    Also ich meine er würde mir jetzt zum Beispiel: http://www.lima-city.de/boards.php?mode=thread&id=56276

    ausgeben.
    Kann mir einer sagen wie der Befehl lautet?
    Danke

    Beitrag geändert: 18.11.2006 16:18:00 von newwarrior
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Hallo newwarrior,

    ich kann dir zwar nicht sagen, wie der Befehl lautet, denn mir ist kein solcher bekannt, aber dafür nennen ich dir einen andere möglichkeit:

    $url = 'http://'.$_SERVER[SERVER_NAME].$_SERVER[REQUEST_URI];


    Funktioniert, sofern du davon ausgehst, dass nur Adressen über das htt-Protokoll aufgerufen werden.
  4. Autor dieses Themas

    n********r

    Also ich habe jetzt folgendes:

    $login_adress = 'http://'.$_SERVER['SERVER_NAME'].$_SERVER['PHP_SELF'].'/check_login.php';


    Dass wird ausgeben: http://localhost/e-PM/login.php/check_login.php

    Den fetten Teil würde ich gerne weg haben.
    Nur wie?

  5. Also ich habe jetzt folgendes:

    $login_adress = 'http://'.$_SERVER['SERVER_NAME'].$_SERVER['PHP_SELF'].'/check_login.php';


    Dass wird ausgeben: http://localhost/e-PM/login.php/check_login.php

    Den fetten Teil würde ich gerne weg haben.
    Nur wie?


    Eventuell mit dirname($_SERVER['PHP_SELF']);
    Da die Funktion nur String-Manipulation betreibt, müsste sie auch auf URI-Pfade anwendbar sein. Ansonsten könnte preg_replace() oder str_replace() weiterhelfen:

    $short_php_self = preg_replace(
    '/'.preg_quote($_SERVER['SCRIPT_NAME'],'/').'\z/i',
    '',
    $_SERVER['PHP_SELF']
    );
    Das soll $_SERVER['SCRIPT_NAME'] am Ende von $_SERVER['PHP_SELF'] entfernen, hab'sch aber net getestet ...
  6. Verwende einfach die magische Konstante
    __FILE__
  7. Autor dieses Themas

    n********r



    Also ich habe jetzt folgendes:

    $login_adress = 'http://'.$_SERVER['SERVER_NAME'].$_SERVER['PHP_SELF'].'/check_login.php';


    Dass wird ausgeben: http://localhost/e-PM/login.php/check_login.php

    Den fetten Teil würde ich gerne weg haben.
    Nur wie?


    Eventuell mit dirname($_SERVER['PHP_SELF']);
    Da die Funktion nur String-Manipulation betreibt, müsste sie auch auf URI-Pfade anwendbar sein. Ansonsten könnte preg_replace() oder str_replace() weiterhelfen:

    $short_php_self = preg_replace(
    '/'.preg_quote($_SERVER['SCRIPT_NAME'],'/').'\z/i',
    '',
    $_SERVER['PHP_SELF']
    );
    Das soll $_SERVER['SCRIPT_NAME'] am Ende von $_SERVER['PHP_SELF'] entfernen, hab'sch aber net getestet ...


    So habe ich es gemacht:

    $short_php_self = preg_replace('/'.preg_quote($_SERVER['SCRIPT_NAME'],'/').'\z/i','',$_SERVER['PHP_SELF']);
    
    $login_adress = 'http://'.$_SERVER['SERVER_NAME'].$short_php_self.'/check_login.php';


    Und raus kommt das:http://localhost/check_login.php

  8. Na, dann läuft dein Script auch vom Verzeichnis '/e-PM/' aus. Kann man natürlich von hier aus gaaaanz schlecht erkennen. Hast du mal meinen Vorschlag mit dirname() probiert?

    Wenn ich solche Probleme lösen muss, dann hole ich mir immer mit print_r() oder var_dump() das Array $_SERVER. Dort stehen ein paar interessante Pfade oder Teil-URIs drin. Die werden dann passend aneinandergeklebt. Wenn sie nicht passen, wird vorher vorne oder hinten was abgeschnitten. (*Aua!*)
    Hängt natürlich vom Anwendungsfall ab.

    __FILE__ gibt übrigens den Pfad im Dateisystem an, und zwar von dem Script, in dem die Konstante __FILE__ notiert wurde. Also, wenn Script A Script B inkludiert und in Script B irgendwo __FILE__ steht, ersetzt PHP dessen Inhalt durch den Pfad, der auf der Festplatte zu Script B führt.
  9. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!