fehlermeldung
Simon
- php
0 Der Martin0 Simon
Hi,
ich hab bei meiner Kontakt Seite den Anfang geändert. Und zwar so:
<?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">
Das Problem ist das ich jezt immer eine Fehlermeldung bekomme:
Parse error: parse error, unexpected T_STRING in "blablabla" on line 1.
Wenn ich die erste Zeile weglasse bekomme ich aber einen Fehler im W3 Validator.
MFG
Simon
Hallo,
ich hab bei meiner Kontakt Seite den Anfang geändert. Und zwar so:
<?xml version="1.0" encoding="utf-8"?>
Das Problem ist das ich jezt immer eine Fehlermeldung bekomme:
Parse error: parse error, unexpected T_STRING in "blablabla" on line 1.
das deutet stark darauf hin, dass dein Hoster eine Krankheit namens short_open_tags aktiv hält. Die sorgt dafür, dass bereits die Zeichenfolge "<?" den PHP-Parser anschmeißt, der natürlich mit der XML-Deklaration nicht viel anfangen kann.
Wenn ich die erste Zeile weglasse bekomme ich aber einen Fehler im W3 Validator.
Öhm, nicht wirklich, oder? Ein (X)HTML-Dokument, das mit dem DOCTYPE beginnt, ist doch eigentlich völlig in Ordnung.
Du könntest natürlich die XML-Deklaration mit einem Echo-Statement durch PHP ausgeben lassen - aber das würde wieder nur Symptome kurieren, nicht Ursachen.
So long,
Martin
das deutet stark darauf hin, dass dein Hoster eine Krankheit namens short_open_tags aktiv hält. Die sorgt dafür, dass bereits die Zeichenfolge "<?" den PHP-Parser anschmeißt, der natürlich mit der XML-Deklaration nicht viel anfangen kann.
Ok dann werde ich mal Kontakt mir Ihm aufnehmen und danach fragen.
Öhm, nicht wirklich, oder? Ein (X)HTML-Dokument, das mit dem DOCTYPE beginnt, ist doch eigentlich völlig in Ordnung.
Du könntest natürlich die XML-Deklaration mit einem Echo-Statement durch PHP ausgeben lassen - aber das würde wieder nur Symptome kurieren, nicht Ursachen.
Nein, ich habe gemeint das mir dann der Validator sagt: "No Character Encoding Found"
Hi,
Du könntest natürlich die XML-Deklaration mit einem Echo-Statement durch PHP ausgeben lassen - aber das würde wieder nur Symptome kurieren, nicht Ursachen.
Nein, ich habe gemeint das mir dann der Validator sagt: "No Character Encoding Found"
oh - dann untersuche mal, ob dein Server im HTTP-Header eine Angabe zur Zeichencodierung (charset) sendet. Anscheindend nicht. Dann sollte eigentlich der Defaultwert UTF-8 gelten. Wenn dein Dokument aber eine andere Codierung verwendet, wird's problematisch.
Merke: Die Angabe der Zeichencodierung im HTTP-Header nat normalerweise die höchste Priorität. Nur wenn im HTTP-Header nichts dazu steht, gilt ersatzweise die Angabe aus der XML-Deklaration (XHTML) oder dem entsprechenden meta-Element (HTML).
So long,
Martin
oh - dann untersuche mal, ob dein Server im HTTP-Header eine Angabe zur Zeichencodierung (charset) sendet. Anscheindend nicht. Dann sollte eigentlich der Defaultwert UTF-8 gelten. Wenn dein Dokument aber eine andere Codierung verwendet, wird's problematisch.
Wenn ich mit einem Meta-Tag eine Zichencodierung (also charset) gebe, dann sagt mir der Validator dass kein Atribut charset gibt (Strict)
Moin Moin!
Wenn ich mit einem Meta-Tag eine Zichencodierung (also charset) gebe, dann sagt mir der Validator dass kein Atribut charset gibt (Strict)
Du willst den Content-Type angeben -- <meta http-equiv="Content-Type" value="text/html; charset=utf-8"> -- entprechend anderer Content-Type für xhtml.
Alexander
Hi,
hab mit meinem Hoster gesprochen. Er sagte mir das es an PHP 4 liegt und hat dan auf PHP 5 umgestellt.
Ändert aber leider nichts am Problem.
Weiß vieleicht noch jemand eine andere Möglichkeit?
MFG
Simon
Hi,
hab mit meinem Hoster gesprochen. Er sagte mir das es an PHP 4 liegt und hat dan auf PHP 5 umgestellt.
Ändert aber leider nichts am Problem.
Und wie ist short_open_tags jetzt eingestellt? (phpinfo();)
Weiß vieleicht noch jemand eine andere Möglichkeit?
http://php-faq.de/q-fehler-shorttags-xml.html
MfG ChrisB
Und wie ist short_open_tags jetzt eingestellt? (phpinfo();)
Es steht auf On.
Werde noch mal kontakt mit ihm aufnehmen!
Hi,
hab noch mal mit Ihm gesprochen. Er sagte mir das die short_open_tags aus Sicherheitsgründen nicht deaktiviert werden können!?
MFG
Simon
Hi,
hab noch mal mit Ihm gesprochen. Er sagte mir das die short_open_tags aus Sicherheitsgründen nicht deaktiviert werden können!?
Siehe EKKi - dann hat er keine Ahnung, wenn er das ernsthaft behaupten will (oder er verlaesst sich darauf, dass diese Luege dir nicht als solche auffaellt, weil es dir an Wissen fehlt).
Das einzige, was passieren duerfte, wenn der die Option abschaltet, ist das einige Scripte dann nicht mehr "funzen", und er den anderen Kunden erklaeren muss, warum.
Aber ggf. kannst du das ganze ja nur fuer dich konfigurieren (lassen) - die Direktive ist PHP_INI_ALL aenderbar, also bspw. auch per .htaccess (bei der Modul-Version von PHP), oder ueber eine eigene php.ini im Vezeichnis (CGI-Version).
MfG ChrisB
Hi,
hab noch mal mit Ihm gesprochen: als ich Ihn fragte aus welchen Sicherheitsgründen er sie nicht deaktivieren kann antwortete er auf diese Frage nicht aber schrieb nur: "Wenn short_open_tags deakitvieren wurde, hatte es den Effekt, dass man sehr viele PHP Tags nicht mehr verwenden kann.
Da diese Einstellung aber für den kompletten Server gelten würden, können wir diese Anpassung leider nicht vornehmen."
Nochmals danke für die Hilfe
MFG
Simon
Mahlzeit Simon,
"Wenn short_open_tags deakitvieren wurde, hatte es den Effekt, dass man sehr viele PHP Tags nicht mehr verwenden kann.
Wie ich bereits schrieb: Dein Hoster ist inkompetent. Tu Dir selbst einen Gefallen und such Dir einen neuen ...
MfG,
EKKi
Wie ich bereits schrieb: Dein Hoster ist inkompetent. Tu Dir selbst einen Gefallen und such Dir einen neuen ...
Kannst du mir einen Empfehlen? Ich bin gerade bei Hotdomains.at
MFG
Simon
Mahlzeit Simon,
Kannst du mir einen Empfehlen? Ich bin gerade bei Hotdomains.at
Eher nicht - ich hoste meinen Kram seit Jahren selbst und bin nicht mehr auf dem Laufenden ... schau doch mal bei http://www.webhostlist.de/.
MfG,
EKKi
Mahlzeit Simon,
hab noch mal mit Ihm gesprochen. Er sagte mir das die short_open_tags aus Sicherheitsgründen nicht deaktiviert werden können!?
Das ist extremer Schwachsinn ... mich würde doch mal sehr stark interessieren, welche Sicherheitslücke genau deaktivierte short_open_tags denn verursachen.
MfG,
EKKi
Mahlzeit Simon,
hab mit meinem Hoster gesprochen. Er sagte mir das es an PHP 4 liegt
Halten wir also fest: Dein Hoster ist inkompetent.
und hat dan auf PHP 5 umgestellt.
Ändert aber leider nichts am Problem.
Natürlich nicht. Es geht einzig und allein darum, ob short_open_tags aktiviert sind oder nicht ... wie ChrisB auch schon schrieb.
MfG,
EKKi