steve01: SSI statt Frames verwendet - nun Probleme

Hallo zusammen,

bei meinem neuen Projekt wollte ich auf Frames verzichten und haben in jeweils externen Files die "Menüs oben" und die "Menüs unten" definiert. Diese Files binde ich über SSI ein. Der Files sind im Unterordnder ext.

<!--#include virtual="../ext/oben.htm"-->
<!--#include virtual="../ext/unten.htm"-->

Folgendes Probleme: Wenn ich nun in irgendeinem Unterordner in einer Datei *.shtml diese Files einbinde, dann stimmen alle relative Pfadangaben für Bilder und Links nicht mehr. Welche Abhilfe gibt es?

1.) Alle *.shtml Dateien in den leihen Ordner legen

oder

2.) oben.htm/unten.htm umdefinieren anch nach oben.php/unten.php machen und dann den Pfad der akuellen Datei über PHP auslesen und dann die Variablen für die Pfade in oben.php/unten.php füllen

Was gibt es denn noch ?

2.) ist eleganter, aber ich bin leider kein PHP Profi

THX

Steve01

  1. hi,

    2.) oben.htm/unten.htm umdefinieren anch nach oben.php/unten.php machen und dann den Pfad der akuellen Datei über PHP auslesen und dann die Variablen für die Pfade in oben.php/unten.php füllen

    wenn du eh schon PHP zur verfügung hast - warum willst du dann noch SSI einsetzen?

    gruss,
    wahsaga

    1. wenn du eh schon PHP zur verfügung hast - warum willst du dann noch SSI einsetzen?

      hi wahsaga,

      weil dann die seiten doch schneller geladen werden oder nicht ?

      das parsen dauert doch...

      bye,

      steve01

      1. der flaschenhals ist wie immer hier die verbindung vom server zum client.

      2. hi,

        weil dann die seiten doch schneller geladen werden oder nicht ?
        das parsen dauert doch...

        wieso glaubst du, dass SSI-befehle _nicht_ geparst werden müssten?

        gruss,
        wahsaga

        1. wieso glaubst du, dass SSI-befehle _nicht_ geparst werden müssten?

          Ein Nachteil - ein Schönheitsfehler - ist noch die Endung PHP.

          Der Auftraggeber fragt dann immer, was ist denn dass für eine Datei ?

          Bye...

          Steve01

          1. Hallo Steve,

            Ein Nachteil - ein Schönheitsfehler - ist noch die Endung PHP.

            Die ist nicht wirklich nötig:

            AddType application/x-httpd-php .html .php

            Der Nachteil dabei ist, dass nun jede HTML-Datei durch den PHP-Parser geschickt wird, was natürlich nicht sein muss.

            Noch eleganter ist es natürlich mit

            Options +Multiviews

            Der Auftraggeber fragt dann immer, was ist denn dass für eine Datei ?

            Und? Was ist so schlimm daran ihm das zu erklären?

            Schöne Grüße,

            Johannes

            P.S.: Vor ein Satzzeichen gehört kein Leerzeichen.

            --
            Der folgende Satz ist wahr.         | http://www.zeller-johannes.de/
            Der vorhergehende Satz ist gelogen. |
            ss:| zu:} ls:[ fo:} de:] va:} ch:) sh:( n4:| rl:( br:< js:| ie:{ fl:( mo:}
            1. AddType application/x-httpd-php .html .php

              Der Nachteil dabei ist, dass nun jede HTML-Datei durch den PHP-Parser geschickt wird, was natürlich nicht sein muss.

              Hi Johannes,

              ich bin leider kein Admin !

              Der Auftraggeber fragt dann immer, was ist denn dass für eine Datei ?

              Immer das Nachgefrage wenn der Link weiter gegeben wird ;-(

              Bye...

              Steve01

              1. Hallo Steve,

                ich bin leider kein Admin !

                Das geht auch in einer .htaccess-Datei.
                Nur wenn Multiviews nicht schon in der httpd.conf serverweit eingestellt ist, musst

                AllowOverride Options

                gesetzt sein, damit du es in der .htaccess einstellen kannst. Ansonsten halt einfach mal mit dem Admin reden...

                Natürlich will ich dich jetzt nicht überreden PHP einzusetzen, wo es SSI genau so tut. Es geht nur um die allgemeinen Möglichkeiten.

                Schöne Grüße,

                Johannes

                --
                Der folgende Satz ist wahr.         | http://www.zeller-johannes.de/
                Der vorhergehende Satz ist gelogen. |
                ss:| zu:} ls:[ fo:} de:] va:} ch:) sh:( n4:| rl:( br:< js:| ie:{ fl:( mo:}
  2. Hi

    Folgendes Probleme: Wenn ich nun in irgendeinem Unterordner in einer Datei *.shtml diese Files einbinde, dann stimmen alle relative Pfadangaben für Bilder und Links nicht mehr. Welche Abhilfe gibt es?

    Du könntest die Ordnerstruktur so anpassen, dass die Pfade immer korrekt sind, oder die Pfade mit '/' beginnen, wobei nur noch der Servername relativ ist.

    FG

    Tom2

    --
    SELF-Code: (http://emmanuel.dammerer.at/selfcode.html)
    ss:| zu:) ls:& fo:) de:] va:) ch:] sh:( n4:& rl:° br:> js:| ie:% fl:( mo:}
    1. hi tom2,

      ch schreibe jetzt immer den ganzen Link wie z.B.

      http://localhost/projekt/link1.hmt
      http://localhost/projekt/link2.hmt

      in die externen Files.

      Oder meinst du was anderes?

      1. Hi

        http://localhost/projekt/link1.hmt

        Sobald du das auf den Server lädtst wird es warscheinlich nicht mehr funktionieren (Virtual Hosts). Versuch es doch mal mit "/projekt/link1.htm".

        FG

        Tom2

        --
        SELF-Code: (http://emmanuel.dammerer.at/selfcode.html)
        ss:| zu:) ls:& fo:) de:] va:) ch:] sh:( n4:& rl:° br:> js:| ie:% fl:( mo:}
    2. Moin.

      Du könntest die Ordnerstruktur so anpassen, dass die Pfade immer korrekt sind, oder die Pfade mit '/' beginnen, wobei nur noch der Servername relativ ist.

      Ergänzung zu Tom2's Tipp:
      Teile dem Browser über <base href="http://www.blabla.de"> die BasisUrl mit. Dann kannst Du alle Links mit / beginnen lassen.

      Gruß Frank