Oliver: Include und PHP

Hallo,

ich versuche, in eine PHP-Seite eine HTML-Datei zu integrieren (nämlich die Navigationsleiste). Normalerweise geschieht das mittels Server Side Includes, aber PHP sollte das mittels des Befehls

include()

ja auch können. Allerdings funktioniert der Befehl

<?php
include("/navigation.html")
?>

nicht. Weder, wenn die Navigationsdatei im selben Verzeichnis liegt, noch, wenn sie im übergeordneten Verzeichnis liegt. Ist die Syntax richtig? Die Seite hat den Dokumenttyp HTML 4.0 Transitional. Ist das richtig oder muß man das irgendwie ändern, um den Fehler zu beheben?

Für Hilfe wäre ich (PHP-Ahnungsloser) sehr dankbar.

Viele Grüße aus Bonn,
Oliver

  1. Adrian

    <?php
    include("/navigation.html")
    ?>

    Da fehlt ganz schlicht und einfach ein semikolon hinert ")
    ansonsten ist die Syntax ok!

    Gruss Adrian

    1. Hi!

      <?php
      include("/navigation.html")
      ?>

      Da fehlt ganz schlicht und einfach ein semikolon hinert ")

      ansonsten ist die Syntax ok!

      Syntax ist OK, aber vermutlich ist es nicht das was anderes gemeint war:

      include() bezieht sich auf das lokale Filesystem des Servers, und da bedeutet /navigation.html eben er soll im Root-Verzeichnis des Servers nachgucken(z.B. "c:" unter Windows), und da findet er die Datei ganz sicher nicht. Du mußt entweder den absoluten Pfad angeben, oder den relativen Pfad von der PHP-Datei aus.

      Grüße
      Andreas

      1. Hallo,

        danke für die Tipps erstmal, aber es funktioniert immer noch nicht, ich hab alles ausprobiert. Selbst wenn ich nur "navigation.html" angebe und die entsprechende Datei ins selbe Verzeichnis stelle, passiert nichts. Es wird auch keine Fehlermeldung ausgegeben. Der vorgesehene Platz bleibt einfach frei. Ansonsten funktioniert das PHP-Script aber einwandfrei, PHP funktioniert auf dem Server also grundsätzlich.

        Kann es etwas mit dem Dokumenttyp zu tun haben, der immer noch auf "HTML 4.0 Transitional" lautet?

        Fragt, ratlos:
        Oliver

        1. Hi!

          danke für die Tipps erstmal, aber es funktioniert immer noch nicht, ich hab alles ausprobiert. Selbst wenn ich nur "navigation.html" angebe und die entsprechende Datei ins selbe Verzeichnis stelle, passiert nichts. Es wird auch keine Fehlermeldung ausgegeben. Der vorgesehene Platz bleibt einfach frei. Ansonsten funktioniert das PHP-Script aber einwandfrei, PHP funktioniert auf dem Server also grundsätzlich.

          Liegt die PHP-Datei und die einzubindende Navigationsseite genau imselben Verzeichnis? Was hat der Server für ein Betriebssystem?

          Versuche es mal so:

          "./navigation.html", ./ bedeutet "Datei liegt im selben verzeichnis.

          Und wenn das auch nicht geht, versuche es mal mit dem absoluten Pfad, also sowas wie "/www/kunde/htdocs/dein_Verzeichnis/navigation.html"

          Kann es etwas mit dem Dokumenttyp zu tun haben, der immer noch auf "HTML 4.0 Transitional" lautet?

          eigentlich nicht, nein.

          Grüße
          Andreas

          1. Liegt die PHP-Datei und die einzubindende Navigationsseite genau imselben Verzeichnis? Was hat der Server für ein Betriebssystem?

            Ja, eine Kopie der Datei liegt genau im selben Verzeichnis, eine zweite im übergeordneten. Der Server läuft anscheinend unter Red Hat Linux.

            "./navigation.html", ./ bedeutet "Datei liegt im selben verzeichnis.

            Hab ich probiert, ändert nichts.

            Und wenn das auch nicht geht, versuche es mal mit dem absoluten Pfad, ...

            Geht auch nicht. Bleibt alles beim alten, keine Fehlermeldung, nur edler Weißraum.

            Verzweifel... :-((

            Oliver

            1. Hallo

              mach halt erst mal irgend ein php zeug in die include datei um zu testen ob es geht

              villeiht hilfts ja

              grüße

              Alex

              1. Hi,

                steht denn überhaupt was includierbares (Syntax) in navigation.html drin? Vielleicht ist ja nicht der include()-Aufruf, sondern das Aufgerufene falsch...

                gruss,
                markus

                1. hi,

                  wenn Deine php-datei schon diverse html-elemente besitzt, z.b. dateikopf, body, ist da eine .html datei überhaupt angebracht?

                  versuchs doch mal mit einer .txt-datei.

                  F.

  2. HI,

    <?php
    include("/navigation.html")
    ?>

    Normalerweise müsste da ne Fehlermelddung kommen.
    da fehlt noch hinter der ) ein ;

    Grüße aus Leverkusen,
    Tobias Jarmuzek

    --
    Mit Computern kann man Probleme lösen die man ohne sie gar nicht hätte.
    http://www.jarmuzek.com/tobias
  3. Hi,

    include("/navigation.html")

    "navigation.html" für gleiches Verzeichnis,
    "../navigation.html" für übergeordnetes Verzeichnis

    cu,
    Andreas

    --
    Der Optimist: Das Glas  ist halbvoll.  - Der Pessimist: Das Glas ist halbleer. - Der Ingenieur: Das Glas ist doppelt so groß wie nötig.