SSI-Variable mit Umlaut
Gunnar Bittersmann
- webserver
Hi,
Warum funzt[tm] das nicht?
<!--#set var="foo" value="Ä" -->
<!--#echo var="foo" -->
Es erscheint kein "Ä", sondern ein "?" (auch im Quelltext).
Live long and prosper,
Gunnar
Tag Gunnar.
Warum funzt[tm] das nicht?
<!--#set var="foo" value="Ä" -->
<!--#echo var="foo" -->
SSI kennt von Haus aus keine HTML-Entities, du musst also explizit angeben, dass da welche sind. Folgendes sollte funktionieren:
<!--#set var="foo" value="Ä" -->
<!--#echo encoding="entity" var="foo" -->
Siechfred
Folgendes sollte funktionieren:
<!--#set var="foo" value="Ä" -->
<!--#echo encoding="entity" var="foo" -->
Siechfred,
Leider nicht.
Live long and prosper,
Gunnar
Tag Gunnar.
<!--#set var="foo" value="Ä" -->
<!--#echo encoding="entity" var="foo" -->
Leider nicht.
Alternativvorschlag:
<!--#set var="foo" value="Ä" -->
Ansonsten kann es sein, dass du als Zeichensatz nicht ISO-8859-1 verwendest (siehe Erläuterungen zu mod_include)? Und ist die Apache-Version wenigstens 1.3.12? Meine Testseite jedenfalls funktioniert tadellos.
Siechfred
Meine Testseite jedenfalls funktioniert tadellos.
Siechfred,
Da lese ich beide Male "ÄÖÜäöüß" im generierten Quelltext.
Ich hätte aber gern, dass "Auml;" im generierten Quelltext steht.
Lässt sich das "Auml;" im Include nicht irgendwie maskieren, so dass es serverseitig nicht in etwas anderes umgewandelt wird?
Live long and prosper,
Gunnar
PS. Das ist keine Lösung, sondern ein mieser Würgaround:
<!--#set var="foo" value="&" --><!--#set var="bar" value="Auml;" -->
<!--#echo var="foo" --><!--#echo var="bar" -->
Tag Gunnar.
Da lese ich beide Male "ÄÖÜäöüß" im generierten Quelltext.
Ich hätte aber gern, dass "Auml;" im generierten Quelltext steht.
Das dürfte nicht gehen, die Anzeige ist ausnahmsweise mal WYSIWYG: noch 'ne Testseite. Bei deinem Vorhaben scheint wohl die Grenze von SSI erreicht und du wirst m.E. ein externes Script deiner Wahl bemühen müssen, das die Ausgabe so liefert, wie du sie haben möchtest.
Siechfred
Ich hätte aber gern, dass "Auml;" im generierten Quelltext steht.
"Ä" meinte ich natürlich.
Das dürfte nicht gehen,
Siechfred,
Es geht mit der von mir erwähnten Krücke und dem von dir erwähnten encoding, allerdings nicht encoding="entity"; sondern, damit der Server aus "&" nicht "&" macht, encoding="none".
<!--#set var="foo" value="&" --><!--#set var="bar" value="Auml;" -->
<!--#echo encoding="none" var="foo" --><!--#echo var="bar" -->
Ich halte das für äußerst unelegant und wollte das eigentlich vermeiden …
Live long and prosper,
Gunnar
Tag Gunnar.
Es geht mit der von mir erwähnten Krücke und dem von dir erwähnten encoding, allerdings nicht encoding="entity"; sondern, damit der Server aus "&" nicht "&" macht, encoding="none".
Ja, wenn ich die Doku zu mod_include richtig verstanden habe, ist encoding="entity" die Standardeinstellung.
<!--#set var="foo" value="&" --><!--#set var="bar" value="Auml;" -->
<!--#echo encoding="none" var="foo" --><!--#echo var="bar" -->
Ich halte das für äußerst unelegant und wollte das eigentlich vermeiden …
Tja, es scheint so, als ob encoding="entity" die Umlaute ignoriert. Mit anderen HTML-Zeichen funktioniert es: http://test.anaboe.net/ssi_test.shtml. Die Einstellung scheint also nur die HTML-eigenen Zeichen zu maskieren.
Siechfred
<!--#set var="foo" value="Ä" -->
<!--#echo var="foo" -->Es erscheint kein "Ä", sondern ein "?" (auch im Quelltext).
Nachtrag: Es ist ein "?" in der Quelltext-Anzeige des Firefox, in der des IE ist gar kein Zeichen. Der IE stellt auch kein Zeichen im Viewport dar.)
value="&" → Es kommt "&" in den Quelltext
value="&A;" → Es kommt "&A;" in den Quelltext (Die Entity A gibt’s ja auch nicht.)
value="Ä" → Leider kommt nicht "Ä" in den Quelltext, sondern das wird in irgendwas umgewandelt. :-(
Live long and prosper,
Gunnar
PS. Ich möchte kein "Ä" im Quelltext der Include-DAtei verwenden.