SHTML datei - Variablen aus Adresse...
ERA
- sonstiges
Hallo!
Ich will eine einfache lösung für folgendes problem
Mit einem Pfad wie z.B.: http://www.domain.de/dateianzeigen.shtml?VH=1&VB=dateiname.htm&VF=34
soll die SHTML datei irgendwie angesprochen werden.
<!--#include virtual=VH -->
<!--#include virtual=VB -->
<!--#include virtual=VF -->
Wie kann ich die variablen aus der adresse übergeben?
Am schluss müsste dann eine datei ausgegeben werden welche den Inhalt der drei einzelnen Dateien aufweist.
Ich will eine einfache lösung für folgendes problem
Kinder mit'm Will'n.. ;>
Mit einem Pfad wie z.B.: http://www.domain.de/dateianzeigen.shtml?VH=1&VB=dateiname.htm&VF=34
soll die SHTML datei irgendwie angesprochen werden.<!--#include virtual=VH -->
Wie kann ich die variablen aus der adresse übergeben?
Das Höchste der Gefühle, was die Parameter aus der URL angeht, ist die Umgebungsvariable $QUERY_STRING, die den kompletten Text nach dem Fragezeichen enthält.
Eine direkte Übergabe Deiner Parameter an include ist deshalb nicht möglich, aber sowieso nicht ratsam, da ansonsten einjeder fröhlich x-beliebige Dateien anzeigen lassen könnte, ob Du es nun willst oder nicht.
SSI bietet eine if-Konstruktion mit einfachen Textvergleichen, mit der Du exakt steuern kannst, was bei welchen Parameterwert passiert.
<!--#if expr="$QUERY_STRING = /a=1/" -->
<!--#include virtual="a_ist_1" -->
<!--#else -->
<!--#include virtual="a_ist_nicht_1" -->
<!--#endif -->
(Aufruf à la "test.shtml?a=1;b=2;c=3")
Wichtig beim if-Vergleich sind die Schrägstriche, die dafür sorgen, daß nur ein Teil von $QUERY_STRING geprüft wird (sprich: die Existenz des betreffeden Textes) und nicht der komplette Inhalt.
Bitte konsultiere die Apache-Anleitung, Kapitel mod_include, für weitere Details.
Gruß,
soenk.e