XHTML Header und PHP
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
all
angabe
beitrag
dokument
drum
einleitung
eintrag
encoding
error
explorer
fehler
fehlermeldung
fragen
freund
meinung
quelltext
standard
stehen
tag
zeile
-
Ich habe ein kleines Problem mit php *g*
Bei XHTML schreibt man ja nach ganz oben opional sowas wie: <?xml version="1.0" tag/encoding">encoding="UTF-8"?>
Das m?chte ich auch da stehen haben aber es kommt dann immer die Fehlermeldung:
Parse error: parse error in ... on line 1
Warum der Fehler kommt ist mir klar wegen dem <?
Ein meiner meinung nach unsch?ne L?sung ist daf?r:
<?php
echo "<"."?xml version=\"1.0\" encoding=\"UTF-8\"?>";
?>
Ich habe bereits Freunde befrage und Gegooglt die Suchmaschine habe ich auch benutzt, jetzt meine Frage wie kann man es eleganter machen?
PS: ?nderung an der PHP.ini kommt leider auch nicht in Frage
Beitrag ge?ndert am 24.08.2005 13:32 von sims2
Beitrag ge?ndert am 24.08.2005 13:33 von sims2 -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Generell ist es sch?n und gut wenn man "konform" bleiben will. Allerdings wird deine Website sobald du diesen Eintrag in deinem HTMl stehen hast vom IE nicht mehr korrekt angezeigt da dieser dann automatisch in den QUIRK Modus schaltet. Leider ist dies im IE 7 auch noch nicht behoben :(
Lediglich Mozilla und Co aktzeptieren die Zeile. -
Generell ist es sch?n und gut wenn man "konform" bleiben will. Allerdings wird deine Website sobald du diesen Eintrag in deinem HTMl stehen hast vom IE nicht mehr korrekt angezeigt da dieser dann automatisch in den QUIRK Modus schaltet. Leider ist dies im IE 7 auch noch nicht behoben :(
Lediglich Mozilla und Co aktzeptieren die Zeile.
Falsch rum: Nur wenn der Exploiter den XML oder/und den XHTML-Header findet, schaltet er in den Standard-konformen Modus. Findet er ihn nicht, schaltet er in den Quirks-Modus (Kompatibilit?tsmodus). Aber darum gehts hier gar nicht. Das Ganze ist ein PHP-Problem. PHP interpretiert den Header als PHP-Quellcode, weil es eben das "<?" findet. Man k?nnte das theoretisch abstellen, indem man in der PHP.ini irgendwas ?ndert, so dass der PHP-Interpreter nur noch die "<?php"-Tags als Einleitung f?r PHP-Quelltext ansieht. Aber wenn du von einem bestimmten Hoster abh?ngst, und der dir die PHP.ini nicht ?ndert, bleibt dir nur die L?sung mit echo(), print() und Co.
Etwas eleganter sieht das hier aus:
print(
'<?xml version="1.0" encoding="UTF-8" ?>'
) -
Wer benutzt denn bitte freiwillig noch HTML 4.0?
Der Internet Explorer 6 hat, wie war es anders zu erwarten, zwei Probleme mit der <!DOCTYPE>-Angabe. Wird vor dem <!DOCTYPE> ein Kommentar oder eine xml-Angabe eingef?gt, so schaltet der IE immer in den Quirks-Modus:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!-- --><?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
Beide Angaben belassen den IE im Quirks-Modus.
Drum hab ich weningstens <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
in all meinen Dokumenten damit es weningstens durch den Validator kommt :) -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage