php.de

Zurück   php.de > Webentwicklung > HTML, Usability und Barrierefreiheit

HTML, Usability und Barrierefreiheit Themen rund um Textauszeichnung, Formatierung, Barrierefreiheit und Usability.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 16.08.2009, 19:13  
Neuer Benutzer
 
Registriert seit: 28.11.2008
Beiträge: 16
KeKs0r befindet sich auf einem aufstrebenden Ast
Standard CHarset und Probleme mit IE

Hi,

ich habe zurzeit extreme Probleme mit charsets, irgendwie ging das früher immer von alleiner, aber seit ich nun Seiten auf meinem eigenen Server hoste hab ich nur probleme.
Ich habe jetzt nach langem hin und her es geschafft dass die Umlaute in meinen HTML Dateien gehen (Ich weiß dafür gibt es Zeichenreferenzen). Aber bei Daten aus der MySQL datenbank stellt er mir keine Umlaute dar, verbindung und datenbank sind UTF-8, Tabellenfelder habe ich schon auf latin1_german1_ci und utf-8 probiert, aber das hat keinen Einfluss. In der Datenbank selbst werden mir auch Umlaute angezeigt nur bei der Ausgabe nicht. Ich habe den Charset Typ von meinem HTML Dokument auch schon auf UTF-8 gestellt, das hat auch nichts gebracht.

Desweiteren habe ich ein scheinbar unlösbares Problem mit dem Internet Explorer, wenn ich mit ihm auf die Seite gehe : Optik Hochheimer ist im Quelltext als erstes Zeichen eine Hyroglyphe, die mir im IE mein Layout zerhackt, und ich weiß nicht wie ich das loswerde. Noch vielleichtt zur Info, ich benutze Smarty.

Hat jemand ne Idee wie man dem auf die schliche kommen kann, weil bei meinerm IE Layout Problem habe ich keine Idee wie ich das lösen soll.

Gruß
KeKs0r ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 17.08.2009, 13:46  
Erfahrener Benutzer
 
Benutzerbild von mermshaus
 
Registriert seit: 14.06.2009
Beiträge: 1.579
PHP-Kenntnisse:
Fortgeschritten
mermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblick
Standard

Die Hieroglyphe ist eine Byte-order mark. In deinem Fall ist es die von UTF-8 in doppelter Ausführung. Die ersten sechs Byte der Datei sehen so aus:

Code:
EF BB BF EF BB BF
Im Editor müsstest du einstellen können, dass die BOM beim Abspeichern nicht erzeugt wird.

Du könntest außerdem noch probieren, den Charset-Header explizit zu setzen. Im PHP-Code vor der ersten Ausgabe:

PHP-Code:
header('Content-Type: text/html; charset=UTF-8'); 
Die aktuelle Seite scheint bei mir jedoch bereits als UTF-8 ausgeliefert zu werden. Worin das Problem mit der Datenbank besteht, kann ich deshalb nicht sagen.

Gruß Marc
mermshaus ist offline   Mit Zitat antworten
Alt 17.08.2009, 18:33  
Neuer Benutzer
 
Registriert seit: 28.11.2008
Beiträge: 16
KeKs0r befindet sich auf einem aufstrebenden Ast
Standard

Ok danke das ist schonmal ein Ansatz, jetzt muss ich das nur noch umsetzen, mein Editor ist Zend Studio 7 (Eclipse) und es ist anscheinend so, dass es daher kommt, dass ich in meinem Layout-template, einen header include:
HTML-Code:
{include file='header.tpl'}
<h1>Überschrift</h1>
Text
{include file='footer.tpl'}
Ich habe mir die Template Dateien nun mal angeschaut, und es ist so dass in jeder Template Datei "EF BB BF" steht, aber wenn ich in der "index.tpl" die "header.tpl" include, steht es ja 2 mal da, oder? Aber das müsste ja sonst auf jeder Seite zu Problemen führen, bie UTF-8 codiert sind und in denen Dateien includet werden.
KeKs0r ist offline   Mit Zitat antworten
Alt 17.08.2009, 20:59  
Moderator
 
Benutzerbild von Chriz
 
Registriert seit: 11.05.2008
Beiträge: 6.069
Chriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer Anblick
Standard

In PHP brauchst du keinen BOM, also schalt ihn grundsaetzlich in deinem Editor ab.

Wenn du in der Datenbank den Zeichensatz auf latin1_* stellst, ist es ja kein Wunder, dass Umlaute zerschossen werden.

Folgende Einstellungen muessen konsequent einen Zeichensatz verwenden/einstellen:
- Datenbank-, Tabellen- und Spalten-Definition (utf8_general_cs)
- Datenbankverbindung (SET NAMES utf8)
- PHP-Skripte (im Editor die Kodierung auf UTF-8 stellen, aber ohne BOM!)
- Fuer die Ausgabe einen speziellen Header senden: header("Content-Type: text/html; charset=UTF-8")
- Im HTML sicherheitshalber <meta http-equiv="Content-Type" name="text/html; charset=UTF-8" /> vermerken

Das ist alles. Wenn deine Umlaute nicht stimmen sind sie entweder schon falsch in der Datenbank bevor du die Datenbank-Konfiguration wie oben vorgeschlagen vornimmst, oder aber einer der Schritte wurde nicht beachtet. Mehr ist es nicht.
__________________
"Nuschel ich?" - "Was?"
Chriz ist offline   Mit Zitat antworten
Alt 21.08.2009, 17:02  
Neuer Benutzer
 
Registriert seit: 28.11.2008
Beiträge: 16
KeKs0r befindet sich auf einem aufstrebenden Ast
Standard

wäre es denn stark von Nachteil, immer auf die BOMs zu verzichten, weill wenn ich template dateien inkludiere, habe ich halt das Problem, dass es mehr als 1 BOM gibt, was mir das Layout zerhackt.

Gruß Marc
KeKs0r ist offline   Mit Zitat antworten
Alt 21.08.2009, 17:38  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 34.253
PHP-Kenntnisse:
Fortgeschritten
nikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz sein
Standard

Zitat:
wäre es denn stark von Nachteil, immer auf die BOMs zu verzichten
Nein. Im Gegenteil. Es ist von Nachteil, BOM zu benutzen.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist gerade online   Mit Zitat antworten
Alt 21.08.2009, 20:37  
Moderator
 
Benutzerbild von Chriz
 
Registriert seit: 11.05.2008
Beiträge: 6.069
Chriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von Chriz Beitrag anzeigen
In PHP brauchst du keinen BOM, also schalt ihn grundsaetzlich in deinem Editor ab.
Zitat:
Zitat von KeKs0r Beitrag anzeigen
wäre es denn stark von Nachteil, immer auf die BOMs zu verzichten
Liest du überhaupt unsere Postings?
__________________
"Nuschel ich?" - "Was?"
Chriz ist offline   Mit Zitat antworten
Alt 24.08.2009, 08:35  
Neuer Benutzer
 
Registriert seit: 28.11.2008
Beiträge: 16
KeKs0r befindet sich auf einem aufstrebenden Ast
Standard

Ja ich lese sie aber du hast mir die Antwort nur für php dateien gegeben, und ich editiere mit meinem Editor auch meine Templates, und daher habe ich die Frage nochmal aufgegriffen.
KeKs0r ist offline   Mit Zitat antworten
Alt 24.08.2009, 15:18  
Erfahrener Benutzer
 
Benutzerbild von mermshaus
 
Registriert seit: 14.06.2009
Beiträge: 1.579
PHP-Kenntnisse:
Fortgeschritten
mermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblick
Standard

Die Verwendung einer BOM ist bei UTF-8 meines Wissens generell unnötig (siehe etwa hier, vierter Absatz). Außerdem gibst du dem Browser das Encoding deiner Seite ja auf andere Weise explizit an. Ich editiere alles in UTF-8 und habe noch nie die Notwendigkeit für eine BOM gehabt.

Gruß Marc
mermshaus ist offline   Mit Zitat antworten
Alt 25.01.2010, 13:29  
Neuer Benutzer
 
Registriert seit: 28.08.2009
Beiträge: 9
PHP-Kenntnisse:
Anfänger
tf_traveler befindet sich auf einem aufstrebenden Ast
Standard

tausend dank leute. den header per php zu senden war die lösung meines problems. falls andere danach googeln hier nochmal input:

Fall: Externe Datei PHP in Frame laden, mit Umlauten

Problem mit charset iso: Trotz genauer Definition hat er die Umlaute in Content nicht angezeigt.

Hier das Javascript für alle die neugierig sind, klappt super:


function GetContent1(id) {
$("#content").load("data.php?id="+ id +"");
}


Setzte ich in der data.php den Header mit PHP, werden die Umlaute angezeigt.

Hurra! Danke!
tf_traveler ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
PHP Default charset für Funktionen MasterQ PHP-Fortgeschrittene 6 06.01.2011 10:03
Firefox / IE - Probleme HTML, Usability und Barrierefreiheit 5 20.07.2009 17:04
Win+Firefox alles ok, IE oder Linux: Probleme vollderdude PHP Tipps 2009 6 02.01.2009 16:17
[Erledigt] Probleme mit iFrame rocco HTML, Usability und Barrierefreiheit 1 28.12.2008 17:44
Probleme mit "load data infile" nach Serverupgrade knödelkopf Datenbanken 4 16.06.2008 16:12
Probleme bei Speicherung von serialize() Strings Manni2k PHP Tipps 2006 13 15.10.2006 15:06
Probleme mit mbstring extension unter Debian HStev Server, Hosting und Workstations 3 30.08.2006 20:55
Probleme mit Rechteverteilung chmod() per script!!!??? Funky_ PHP Tipps 2006 7 17.06.2006 17:10
Probleme bei der Installation von Turck MMCache tomx992 PHP-Fortgeschrittene 2 27.09.2005 20:31
[Erledigt] Probleme beim Datenupload zu meiner Datenbank Datenbanken 3 05.09.2005 19:47
[Erledigt] hilfe! probleme mit... PHP Tipps 2005 4 12.04.2005 22:55
Zwei Rechner ins Netz - Router - Hub - Probleme... imported_Ben Off-Topic Diskussionen 37 13.01.2005 21:36
Technische Probleme mit Sessions PHP-Fortgeschrittene 4 18.11.2004 14:45
[Erledigt] Probleme mit Fremdsprachen HTML, Usability und Barrierefreiheit 2 21.09.2004 17:11
PHP Bilder in DB / Probleme bei Änderung PHP-Fortgeschrittene 1 05.06.2004 11:20

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
iframe charset, php charset, internet explorer charset, http://www.php.de/html-usability-und-barrierefreiheit/58108-charset-und-probleme-mit-ie.html, ie charset, internet explorer .php-dateien problem, php charset header, charset ie, charset header php, charset header ie, msie utf-8 charset umlaute, ie beim speichern umlaute zerschossen, charset php, ie 6 charset, html iframe charset, zend studio 7 charset, internet explorer 6 charset wird nicht korrekt angezeigt, zeichensatz iframe, ie6 charset, ie iframe charset

Alle Zeitangaben in WEZ +1. Es ist jetzt 18:56 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum