SSI include virtual
Frank
- html
Hallo,
ich möchte bei einem include virtual
den Dateinamen im Query mitgeben.
<!--#include virtual="header.shtml?DOCUMENT_NAME" -->
haut leider nicht hin.
Auch
<!--#include virtual="header.shtml?$ENV{'Script_NAME'}" -->
und ähnliche Varianten wollen nicht klappen :o(
Geht das überhaupt ?
Kann mir jemand einen Tipp geben ?
Danke, Frank
hallo,
ich möchte bei einem include virtual
den Dateinamen im Query mitgeben.
<!--#include virtual="header.shtml?DOCUMENT_NAME" -->
haut leider nicht hin.
Geht das überhaupt ?
Ja, wenn auch wohl nicht so, wie du dir das denkst. Was hast du denn an http://de.selfhtml.org/servercgi/server/ssi.htm#variable nicht verstanden?
Grüße aus Berlin
Christoph S.
Hallo,
ich möchte bei einem include virtual
den Dateinamen im Query mitgeben.
<!--#include virtual="header.shtml?DOCUMENT_NAME" -->
haut leider nicht hin.
Geht das überhaupt ?Ja, wenn auch wohl nicht so, wie du dir das denkst. Was hast du denn an http://de.selfhtml.org/servercgi/server/ssi.htm#variable nicht verstanden?
Ich denke nicht, dass dort beschrieben wird wie er das machen kann. Er versucht ja nicht einen $QUERY_STRING abzufragen, sondern eines in <!--#include virtual="... " --> hineinzuschreiben.
Und das wird wohl nicht gehen.
Was mir jetzt einfällt ist ein:
<!--#include virtual="header.shtml"-->
<!--#set var="QUERY_STRING" value="$DOCUMENT_NAME"-->
Aber ob das so klappt, glaube ich eher weniger.
Besser wäre, er würde z.B. eine SSI-Variable setzen und im header.shtml diese dann abfragen und darauf reagieren:
<!--#if expr="$blabla = blabla" -->
....
<!--#elif expr="$blabla = blubb"-->
.....
<!--#else -->
....
<!--#endif -->
Grüße
Thomas
DANKE Euch Beiden!
@ Christoph: Ich muss wohl mal meine Version 8.0 mit 8.11 updaten :))
@ Thomas: Der Idee werd ich mal nachgehen. Da geht vielleicht was ...
Besten Dank, Frank
hallo,
http://de.selfhtml.org/servercgi/server/ssi.htm#variable
Ich denke nicht, dass dort beschrieben wird wie er das machen kann. Er versucht ja nicht einen $QUERY_STRING abzufragen, sondern eines in <!--#include virtual="... " --> hineinzuschreiben.
Und das wird wohl nicht gehen.
Richtig, _so_ geht es nicht
Besser wäre, er würde z.B. eine SSI-Variable setzen
<!--#if expr="$blabla = blabla" -->
Und genau das steht auch an der angegebenen Stelle.
Grüße aus Berlin
Christoph S.
Hallo,
Besser wäre, er würde z.B. eine SSI-Variable setzen
<!--#if expr="$blabla = blabla" -->Und genau das steht auch an der angegebenen Stelle.
Darüber können wir diskutieren, dort steht nämlich was anderes. ;-)
Grüße
Thomas
hallo Thomas,
<!--#if expr="$blabla = blabla" -->
Und genau das steht auch an der angegebenen Stelle.
Darüber können wir diskutieren, dort steht nämlich was anderes. ;-)
Du versetzt mich in Staunen. Was ist denn an
<!--#if expr="$QUERY_STRING = /test/" -->
(wie es da steht) so anders als an deinem
<!--#if expr="$blabla = blabla" -->
Wie du weißt, ist der gesamte Absatz "Arbeiten mit Variablen" von mir neu geschrieben worden. Wenn du daran etwas fehlerhaft finden solltest, würde ich das schon gerne wissen wollen.
Grüße aus Berlin
Christoph S.
Hallo,
<!--#if expr="$blabla = blabla" -->
Und genau das steht auch an der angegebenen Stelle.
Darüber können wir diskutieren, dort steht nämlich was anderes. ;-)Du versetzt mich in Staunen. Was ist denn an
<!--#if expr="$QUERY_STRING = /test/" -->
(wie es da steht) so anders als an deinem<!--#if expr="$blabla = blabla" -->
Wie du weißt, ist der gesamte Absatz "Arbeiten mit Variablen" von mir neu geschrieben worden. Wenn du daran etwas fehlerhaft finden solltest, würde ich das schon gerne wissen wollen.
Habe ich gesagt, dass dort was fehlerhaft ist!?
Aber wenn du doch auf einen "Fehler" bestehst ;-) : in der Tabelle bei "#echo" fehlt "QUERY_STRING" (QUERY_STRING_UNESCAPED ist vorhanden).
Was ich meinte ist, dass dort zwar ewas abgefragt wird, aber eben eine vorgegebende Umgebungsvariable (was Neulinge dazu verleiten kann, zu gluben, man kann nur solche Sachen abfragen) Und es geht dort aus dem Beispiel nicht heraus, dass man selbstdefinierte Variablen auch in anderen Seiten abfragen kann. Das ist keines Falls ein Fehler von dir, denn man kann nicht alle Eventualitäten beschreiben.
Grüße
Thomas
Hell-O!
Wie du weißt, ist der gesamte Absatz "Arbeiten mit Variablen" von mir neu geschrieben worden. Wenn du daran etwas fehlerhaft finden solltest, würde ich das schon gerne wissen wollen.
Fehlerhaft ist m.E. nichts. Aber vielleicht sollte man etwas zum Thema Substitution von Variablen sagen (natürlich mit dem Hinweis, dass dies XSSI unter Apache voraussetzt).
Siechfred
Hell-O!
ich möchte bei einem include virtual
den Dateinamen im Query mitgeben.
Das geht grundsätzlich schon.
<!--#include virtual="header.shtml?DOCUMENT_NAME" -->
haut leider nicht hin.
Ja, weil du header.shtml den String "DOCUMENT_NAME" übergibst.
<!--#include virtual="header.shtml?$ENV{'Script_NAME'}" -->
und ähnliche Varianten wollen nicht klappen
Solltest du Extended SSI verwenden (Apache erforderlich), sollte diese Variante durchaus funktionieren, wenn du sie richtig anwendest:
<!--#include virtual="header.shtml?$DOCUMENT_NAME" -->
Um von der Variablensubstitiution Gebrauch zu machen, musst du einfach die deklarierte Variable in doppelten Hochkommata nach dem Schema "$Variablenname" notieren. Das funktioniert mit jeder Variablen, also auch mit den vordefinierten Umgebungsvariablen.
Geht das überhaupt ?
Ja, du musst den Querystring in header.shtml natürlich auch auswerten, entweder in der Art, wie es Thomas schon beschrieben hat, du kannst ihn aber auch einfach nur mittels echo ausgeben lassen:
<!--#echo var="QUERY_STRING" -->
Beachte dabei bitte unbedingt, dass header.shtml ohne head und ohne body-Tags daherkommt, sonst ist dein Ergebnis ungültiges HTML. Ich habe mal eine kleine Demonstration hochgeladen.
Siechfred