Pfad der übergeordneten include?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Pfad der übergeordneten include?

    Hallo Leute,

    ich habe ein kniffeliges Problem und ich hoffe ihr könnt mir helfen. Ich habe eine Datei head.php die aus verschiedenen verzeichnissen included wird.

    Also z.B.

    http://www.meine-domain.de/vz1/
    http://www.meine-domain.de/vz1/vzz2/
    http://www.meine-domain.de/vz1/vzz2/vzz3/

    während sich der header unverändert im root befindet und via include("../../head.php"); eingefügt wird, (für letzte URL)

    Mit welchem Befehl bekomme ich aus der head.php heraus das Verzeichnis, dass im Browser angezeigt wird, als http://www.meine-domain.de/vz1/vzz2/vzz3/ ???

    mit $_SERVER['SERVER_NAME']; und REQUESTED_URI bekomme ich ja immer nur den Pfad wo die head.php liegt (also root) und nicht den pfad, den ich eigentlich suche.

    Kann mir da jemand weiter helfen?

    vielen Dank,

    Lars Großmann...

  • #2
    Suchst du __PATH__? Und REQUEST_URI gibt das zurück, was der Benutzer eingegeben hat, nicht wo die Datei tatsächlich liegt. Das heißt, evtl. Rewrites werden da nicht zurück-aufgelöst.
    [FONT="Helvetica"]twitter.com/unset[/FONT]

    Shitstorm Podcast – Wöchentliches Auskotzen

    Kommentar


    • #3
      probier mal
      $_SERVER['SCRIPT_FILENAME']
      Beantworte nie Threads mit mehr als 15 followups...
      Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

      Kommentar


      • #4
        REQUEST_URI und $_SERVER['SCRIPT_FILENAME'] geben mir jeweils nur den Pfad des Roots an, wo die head.php ja auch liegt.

        wie funktioniert __PATH__? Dazu kann ich nichts finden...

        Kommentar


        • #5
          Mir fällt grad auf, dass es __PATH__ gar nicht gibt. Sorry, hab da irgendwie __FILE__ im Kopf gehabt. MelloPie hat dir aber einen guten Hinweis gegeben
          [FONT="Helvetica"]twitter.com/unset[/FONT]

          Shitstorm Podcast – Wöchentliches Auskotzen

          Kommentar


          • #6
            __PATH__ entspricht: dirname($_SERVER['SCRIPT_FILENAME']);

            wobei __PATH__ echt mal ne gute Sache wäre
            Beantworte nie Threads mit mehr als 15 followups...
            Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

            Kommentar


            • #7
              Das kommt davon, wenn man intuitiv PHP programmiert. Ich komm auch bei den String-Funktionen immer ins schleudern: Manchmal mit str davor, manchmal auch mit Bindestrich dazwischen. Nix einheitlich. GRAUSAM
              [FONT="Helvetica"]twitter.com/unset[/FONT]

              Shitstorm Podcast – Wöchentliches Auskotzen

              Kommentar


              • #8
                nochmal zurück zum thema:

                dirname($_SERVER['SCRIPT_FILENAME']) klappt trotzdem nicht. Es wird nur die URL ausgegeben, des headers, und der liegt im Root...

                Kommentar


                • #9
                  also so etwas:
                  head.php: (liegt im root)
                  echo dirname($_SERVER['SCRIPT_FILENAME']) ;
                  in /1/2/3 liegt test.php
                  include '/head.php';
                  gibt was zur Ausgabe?????
                  Beantworte nie Threads mit mehr als 15 followups...
                  Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

                  Kommentar


                  • #10
                    also ich habe es gerade mal so ähnlich getestet und das sollte dann

                    "/1/2/3" zurückgeben...
                    signed oder unsigned... das ist hier die Frage

                    Kommentar


                    • #11
                      also habe ich das Problem nicht richtig verstanden, ich dachte das wäre genau die gewünschte Ausgabe...
                      Beantworte nie Threads mit mehr als 15 followups...
                      Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

                      Kommentar


                      • #12
                        Nein, ich denke die gewünschte Ausgabe wäre $_SERVER['SCRIPT_URI']

                        was du wohl mit einem einfachen print_r($_SERVER) rauszufinden wäre^^
                        signed oder unsigned... das ist hier die Frage

                        Kommentar


                        • #13
                          @mellow_pie:

                          also so etwas:
                          head.php: (liegt im root)
                          echo dirname($_SERVER['SCRIPT_FILENAME']) ;
                          in /1/2/3 liegt test.php
                          include '/head.php';
                          gibt was zur Ausgabe?????
                          fast:
                          head.php liegt im Root
                          index.php liegt in root/1/2/3
                          die index.php included("../../head.php")

                          nun soll in der head-datei die url/1/2/3 herausgefunden werden.

                          in allen $_SERVER Variablen steht nur das Verzeichnis / der Name der head.php

                          und genau: Mein Ziel ist es /1/2/3 auszugeben in der head.php

                          Kommentar


                          • #14
                            und was gibt dir bitte $_SERVER['SCRIPT_URI']? Weil so bekommst du die url noch mit....

                            /1/2/3 wäre dir von MelloPies dirname($_SERVER['SCRIPT_FILENAME']) zurückgegeben worden...
                            Zuletzt geändert von case; 15.04.2008, 16:32.
                            signed oder unsigned... das ist hier die Frage

                            Kommentar


                            • #15
                              In dem SERVER Array befindet sich nur ein REQUEST_URI, und diese gibt den Root aus...

                              Kommentar

                              Lädt...
                              X