Pfad der übergeordneten include?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • 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

    Comment


    • #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

      Comment


      • #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...

        Comment


        • #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

          Comment


          • #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

            Comment


            • #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

              Comment


              • #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...

                Comment


                • #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

                  Comment


                  • #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

                    Comment


                    • #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

                      Comment


                      • #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

                        Comment


                        • #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

                          Comment


                          • #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...
                            Last edited by case; 15-04-2008, 15:32.
                            signed oder unsigned... das ist hier die Frage

                            Comment


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

                              Comment

                              Working...
                              X