Sebert: Root erstellen

Hm,
wie kann man mit PHP das Verzeichnis ermitteln, in dem das aktuelle Script läuft? Mir ist da nur

$$path = 'http://' . $$__SERVER["SERVER__NAME"] . substr($$__SERVER["SCRIPT__NAME"], 0, strlen($$__SERVER["SCRIPT__NAME"]) - strlen(array__pop(explode("/", $$__SERVER[PHP__SELF]))));

eingefallen... aber gibts da nicht was geschickteres? *auf der leitung steh*

  1. Hm,
    wie kann man mit PHP das Verzeichnis ermitteln, in dem das aktuelle Script läuft?

    gibts da nicht ne globale variable DOCUMENT_ROOT
    GLOBALS["DOCUMENT_ROOT"];

    uli

    1. doch aber das nützt nichts weil die vom dateisystem des servers kommt da steht dann z. b. "c:\homepage"

      1. Hallo,

        doch aber das nützt nichts weil die vom dateisystem des servers kommt da steht dann z. b. "c:\homepage"

        Wenn ich Dich richtig verstanden habe, dann hilft Dir ein Ausschnitt aus den meisten meiner Seiten:

        $dieses_script = str_replace( '//', '/', dirname( $PHP_SELF ) . '/' .  basename( $PHP_SELF ) );
        $kompletter_pfad = $DOCUMENT_ROOT . $dieses_script;

        if( $QUERY_STRING != '' )
          $dieses_script .= '?' . $QUERY_STRING;

        Wenn Du nur den Pfad brauchst, nimmst Du basename( $PHP_SELF );

        Gruss, Thoralf

        1. Hallo,

          doch aber das nützt nichts weil die vom dateisystem des servers kommt da steht dann z. b. "c:\homepage"

          Wenn ich Dich richtig verstanden habe, dann hilft Dir ein Ausschnitt aus den meisten meiner Seiten:

          $dieses_script = str_replace( '//', '/', dirname( $PHP_SELF ) . '/' .  basename( $PHP_SELF ) );
          $kompletter_pfad = $DOCUMENT_ROOT . $dieses_script;

          if( $QUERY_STRING != '' )
            $dieses_script .= '?' . $QUERY_STRING;

          Wenn Du nur den Pfad brauchst, nimmst Du basename( $PHP_SELF );

          Gruss, Thoralf

          _____________________________________________________________________

          aber $DOCUMENT_ROOT liefert den root des server-dateisystems! ich kann doch nicht z. b. schreiben:

          <link rel="stylesheet" type="text/css" href="/usr/homepages/11/d38447186/htdocs/format.css">

          sondern da brauch ich ne url (http)...

          1. Hallo,

            aber $DOCUMENT_ROOT liefert den root des server-dateisystems! ich kann doch nicht z. b. schreiben:

            <link rel="stylesheet" type="text/css" href="/usr/homepages/11/d38447186/htdocs/format.css">

            hast Du mal zuende gelesen, was ich geschrieben habe?! Hast Du basename( $PHP_SELF ) mal probiert? Bei mir geht das einwandfrei! gleich auf der Startseite unten im Copyright-Vermerk findest Du den URL zur aktuellen Seite und der wird mit dem Code-Ausschnitt erzeugt, den ich Dir gepostet habe.

            1. Hallo allerseits,

              hast Du mal zuende gelesen, was ich geschrieben habe?! Hast Du basename( $PHP_SELF ) mal probiert?

              dirname natürlich .. http://www.php.net/manual/de/function.dirname.php

              Gruss, Thoralf

  2. Hm,
    wie kann man mit PHP das Verzeichnis ermitteln, in dem das aktuelle Script läuft? Mir ist da nur

    $$path = 'http://' . $$__SERVER["SERVER__NAME"] . substr($$__SERVER["SCRIPT__NAME"], 0, strlen($$__SERVER["SCRIPT__NAME"]) - strlen(array__pop(explode("/", $$__SERVER[PHP__SELF]))));

    eingefallen... aber gibts da nicht was geschickteres? *auf der leitung steh*

    Hi ultimativ

    versuchs mal mit:

    <?php echo $DOCUMENT_ROOT; ?>

    ciao
    Manfred

    1. kommt aufs gleiche raus, was sauberer ist ist ne andere Sache...
      deine antwort bringt aber auch niemanden weiter.
      uli