php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS Probleme mit HTML5, Bootstrap oder jQuery ?

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 23-10-2007, 18:53
Praha
 Newbie
Links : Onlinestatus : Praha ist offline
Registriert seit: Oct 2007
Beiträge: 3
Praha ist zur Zeit noch ein unbeschriebenes Blatt
Standard xhtml - utf-8 ausliefern

Hallo Community

Dies ist mein erster Beitrag hier ... habe zwar versucht, die Probleme durch durchstöbern diverser Seiten zu lösen, aber das klappt nicht ganz.

Und zwar geht es mal wieder um das leidige Thema utf-8. Ich habe eine Seite (in xhtml 1.0 strict), welche ich als html und utf-8 ausliefern möchte. So weit, so gut.

Also benutze ich folgenden Doctype und Metaangabe:

PHP-Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
>
<
html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<
head>
<
meta http-equiv="Content-Type" content="text/html;charset=utf-8" />

[
usw...] 

Dann habe ich über diesem Dokument noch den utf-8 Header angegeben:

PHP-Code:
header('content-type: text/html; charset=utf-8'); 
Zeichen wie ä, ö, ü ließen sich nun darstellen (nur beim Auslesen von Text aus einer MySQL-DB musste ich mit mysql_encode arbeiten, damit die umlaute korrekt dargestellt wurden.) Wenn ich mich richtig erinnere, hatte der w3c-Validator auch keinerlei Beanstandungen.

Dann fiel mir ein, dass ich die Datei selbst garnicht als UTF-8 abgespeichert hatte und wollte dies nachholen. Gesagt, getan - doch plötzlich wirft PHP die Meldung " headers already sent (output...". Das seltsame daran: Ändere ich die Datei wieder auf ANSI statt UTF-8, verschwindet die Meldung wieder.

Nun gut, ich dachte dann, dass ich den Header vllt garnicht senden muss und habe die Zeile rausgenommen. Jedoch meldet der W3C-Validator jetzt Fehler:

Zitat:
Line 1, Column 0: character "" not allowed in prolog.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"

sowie

Line 1, Column 3: XML Parsing Error: Start tag expected, '<' not found.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"

Nochmal kurz:

Datei in Ansi + Headerangabe; funktioniert
Datei in UTF-8 + Headerangabe; php zeigt Fehler
Datei in UTF-8 ohne Headerangabe: Validator meldet Fehler


Ich könnte die Datei ja auch in Ansi lassen, aber das ich ja nicht der Sinn der Sache.

Was ist da kaputt?

Danke

Geändert von Praha (23-10-2007 um 18:55 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 23-10-2007, 18:57
Seggl-hoch-drei
 Registrierter Benutzer
Links : Onlinestatus : Seggl-hoch-drei ist offline
Registriert seit: Sep 2007
Beiträge: 312
Seggl-hoch-drei ist zur Zeit noch ein unbeschriebenes Blatt
Standard

sieht so aus, also ob irgendwo vor dem header ein " " steht ;-)
oder beim speichern in UTF-8 wurde ein leerzeichen ganz am anfang eingefügt
Mit Zitat antworten
  #3 (permalink)  
Alt 23-10-2007, 19:05
Praha
 Newbie
Links : Onlinestatus : Praha ist offline
Registriert seit: Oct 2007
Beiträge: 3
Praha ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ja, dort stehen ja auch Zeichen. Oben in Meiner Quote sind die nicht sichtbar, im Code selbst schon. Genauso im w3c-Validator: an der Problemstelle ist nur ein Leerzeichen (wenn man es kopiert und woanders einfügt wird daraus ne Zeichenfolge).

Im Quelltext selber ist dort kein Leerzeichen. Wenn ich das dokument wieder auf Ansi ändere, ohne am Code selbst was zu ändern, gehts ja auch wieder. Es hat irgendwas mit diesem UTF-8 zu tun vermute ich mal.
Mit Zitat antworten
  #4 (permalink)  
Alt 26-10-2007, 10:07
Quetschi
 PHP Expert
Links : Onlinestatus : Quetschi ist offline
Registriert seit: Dec 2004
Beiträge: 3.134
Quetschi wird schon bald berühmt werden
Standard

Hallo,

ich vermute mal BOM -> http://de.wikipedia.org/wiki/Byte_Order_Mark
Mit Zitat antworten
  #5 (permalink)  
Alt 26-10-2007, 11:29
Seggl-hoch-drei
 Registrierter Benutzer
Links : Onlinestatus : Seggl-hoch-drei ist offline
Registriert seit: Sep 2007
Beiträge: 312
Seggl-hoch-drei ist zur Zeit noch ein unbeschriebenes Blatt
Standard

ich hatte das gleiche problem.
nimm einfach pspad, mit dem gehts!
Mit Zitat antworten
  #6 (permalink)  
Alt 27-10-2007, 19:12
Praha
 Newbie
Links : Onlinestatus : Praha ist offline
Registriert seit: Oct 2007
Beiträge: 3
Praha ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hallo ihr beiden, danke erstmal.

@Quetschi:

Also soll ich dieses BOM weglassen? (ich weiß ja nichtmal, wie ich das überhaupt hingemacht habe vllt der Windows Editor dran schuld?). Wikipedia meint ja, BOM kann optional mit UTF-8 verwendet werden, benötigt wirds jedoch nicht.

Achja: der W3C Validator liefert auch immer folgende Meldung:

Zitat:
Byte-Order Mark found in UTF-8 File.
The Unicode Byte-Order Mark (BOM) in UTF-8 encoded files is known to cause problems for some text editors and older browsers. You may want to consider avoiding its use until it is better supported.
@Seggl-hoch-drei

Habe mir mal PSPad angeschaut. Doch wie speichere ich nun Dateien unter UTF-8? Ich kann zwar unter "Format" UTF-8 angeben, jedoch scheint es mir so, als sei dies nur für die Anzeige o.ä. gedacht. Denn:
Erstelle ich eine PHP Datei aus den Vorlagen und speichere diese, so zeigt mir der Windows Editor bei öffnen der Datei später "Ansi" an, obwohl bei Format in PSPad utf-8 eingestellt war.
Erstelle ich jedoch aus den Vorlagen eine "XHTML Strict utf-8" Datei und speichere diese, zeigt mir der Windows Editor korrekt utf-8 an. Jedoch gibt es in den PHP Vorlagen nichts mit utf-8.


Grüße

Geändert von Praha (27-10-2007 um 19:23 Uhr)
Mit Zitat antworten
  #7 (permalink)  
Alt 27-10-2007, 19:35
PHP-Desaster
 PHP Expert
Links : Onlinestatus : PHP-Desaster ist offline
Registriert seit: Mar 2006
Beiträge: 3.105
PHP-Desaster befindet sich auf einem aufstrebenden Ast
Standard

Vielleicht hilft dir das ja
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 14:43 Uhr.