Jochen: Dateien mit "include" einfügen - relative Pfadangaben?

Hi,

ich möchte auf den Unterseiten meiner Homepage mit "include" immer eine Datei einbinden, die sich im Hauptverzeichnis befindet.

Bei HTML kann man durch die Angabe <a href="/index.html"> ja - egal auf welcher Unterebene man sich befindet - auf die Datei index.html im Hauptverzeichniz verweisen.

Wenn ich jetzt

include "/test.php";

schreibe, wird die Datei test.php im Wurzelverzeichnis allerdings nicht gefunden.

Nur wenn ich - je nach Ebene - z. B.

include "../../test.php";

eingebe, findet sich die test.php.

Gut, das ist keine große Sache wenn man noch Punkte einfügen muss, aber es würde mich interessieren, ob es in PHP nicht so einen Befehl gibt, mit dem man immer ins Hauptverzeichnis kommt?

Danke.

LG
Jochen

  1. Mahlzeit,

    Wenn ich jetzt

    include "/test.php";

    schreibe, wird die Datei test.php im Wurzelverzeichnis allerdings nicht gefunden.

    Natürlich nicht. Weil sie dort nicht liegt. Sie liegt anscheinend im DOCUMENT_ROOT Deines Webservers - und ich glaube nicht, dass sich das in / befindet. "include()" erwartet immer Pfadangaben auf Dateisystemebene.

    MfG,
    EKKi

    --
    sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
    1. Natürlich nicht. Weil sie dort nicht liegt. Sie liegt anscheinend im DOCUMENT_ROOT Deines Webservers - und ich glaube nicht, dass sich das in / befindet. "include()" erwartet immer Pfadangaben auf Dateisystemebene.

      Okay, danke, also immer mit "../" etc. abfragen.
      :-)

      Also gibt es kein PHP-Äquivalent zu "/index.html"? Weil eine absolute Adresse wie

      include "http://www.meine-homepage.de/test.php";

      kann man ja nicht angeben?

      LG,
      Jochen

      1. Mahlzeit,

        Okay, danke, also immer mit "../" etc. abfragen.

        Nein, musst Du nicht. Du kannst, wenn Du absolute Pfadangaben haben willst, z.B. "include($_SERVER["DOCUMENT_ROOT"]."/test.php");" schreiben. Manchmal ist es schon hilfreich, verlinkte Tipps auch zu lesen ...

        MfG,
        EKKi

        --
        sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
        1. Mahlzeit,

          Okay, danke, also immer mit "../" etc. abfragen.

          Nein, musst Du nicht. Du kannst, wenn Du absolute Pfadangaben haben willst, z.B. "include($_SERVER["DOCUMENT_ROOT"]."/test.php");" schreiben. Manchmal ist es schon hilfreich, verlinkte Tipps auch zu lesen ...

          Hab das schon durchgelesen - nur ist es für einen PHP-Anfänger wie mich schwer zu erkennen, daß $_SERVER["DOCUMENT_ROOT"] genau das macht. Ich hab es für einen abstrakten Platzhalter gehalten, als ich es durchgelesen habe. Ich habe ja nicht gezielt nach diesem Befehl gesucht (der mir bis jetzt nicht bekannt war), sondern allgemein nach Referenzierung aus dem Wurzelverzeichnis.

          Danke, werde es gleich einbauen :-)

          LG
          Jochen