| | | | |
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | |
| Neuer Benutzer Registriert seit: 03.01.2009
Beiträge: 25
![]() | Also im Moment noch ganz einfach. Der folgende Code wird als wird von einem lokalen Webserver geparst. PHP-Code: Gruß |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 05.09.2007
Beiträge: 5.044
![]() | Dann wurden in der "latin1_swedish_ci-Tabelle" utf8 Bytefolgen gespeichert und Deine PHP Seite gibt sie als latin1 aus. Die beiden Zeichen ß entsprechen in latin1 der Bytefolge 0xc3 0x9F. Und das ist nach utf-8 Codierung das Zeichen ß |
| | |
| | |
| Neuer Benutzer Registriert seit: 03.01.2009
Beiträge: 25
![]() | Völlig unstrittig und genau das, was ich auch im ersten Posting dieses Threads geschrieben habe. Meine Frage ist ja, wie ich das Problem direkt im SELECT Statement korrigieren kann, also die Daten direkt als UTF8 selektieren kann. Oder ist das gar nicht möglich? Danke & Gruß |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 05.09.2007
Beiträge: 5.044
![]() | Egal ob Du es mit PHP oder zum Beispiel mysqldump umsetzt, ich würde vorschlagen, Dir die Daten vom Latin1-Server in Latin1 liefern zu lassen und dann dem UTF8-Server diese Daten "unbehandelt" als utf-8 zu übergeben. Es gibt die Einstellungen character_set_client, character_set_results, character_set_connection. Diese kannst Du "in einem Rutsch" per SET NAMES setzen. Die von PHP verwendete libmysql ist von sich aus auf latin1 eingestellt. Diese Einstellungen geben an, wie die Daten der Verbindung client<->server codiert sein sollen. Wenn Du eine Tabelle mit utf-8 Codierung hast und SET NAMES latin1 ist gesetzt, übersetzt der Server die Daten der Tabelle utf8->latin1, bevor sie an den Client gesendet werden. Wenn Du eine Latin1-Tabelle hast und SET NAMES latin1 ist gesetzt, macht der MySQL Server garnichts mit den Daten. Genau das ist Dir bei Deinem PHP Skript passiert: Du bekommst einfach die Byte-Sequenz als wenn sie latin1 wäre, aber eigentlich sind es utf8 Daten. So weit zum Quell-Server. Wenn Du jetzt für die Verbindung zum Ziel-Server SET NAMES utf8 angibst und dann die Daten vom Quell-Server unverändert sendest, werden die utf8 Bytesequenzen "richtig" als utf8 interpretiert. Es gibt einen Nachteil bei dieser Vorgehensweise. Ich weiß nicht, wie Dein DB_ACCESS intern funktioniert, aber mysql_real_escape_string() bekommt die Änderung des charsets über SET NAMES nicht mit. Es wird also weiterhin mit latin1 arbeiten und Zeichen nach diesem charset behandeln. Unter ungünstigen Umständen macht es dabei Quatsch. Geändert von David (04.01.2009 um 03:20 Uhr). |
| | |
|
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| [Erledigt] Problem: PHP Selbe Datei mehr als 1 Mal | soulan | PHP Tipps 2008 | 13 | 28.11.2008 22:51 |
| Problem Upload mehrere Dateien und schreiben in DB | Lapje | PHP Tipps 2008 | 1 | 22.10.2008 13:12 |
| utf8 Problem (Daten aus DB auslesen) | go1denboy | PHP Tipps 2008 | 1 | 23.09.2008 12:19 |
| Problem mit swfobjects | R4v3r | JavaScript, Ajax und mehr | 8 | 21.09.2008 14:17 |
| [Erledigt] Galerie Problem... | coraplanet | PHP Tipps 2008 | 4 | 06.06.2008 13:42 |
| XML mit PHP erstellen -> Problem mit Zeichensatz | madSoul | PHP Tipps 2007 | 11 | 23.03.2007 12:36 |
| datensätze defekt oder problem mit dem einlesen? | Ministry | Datenbanken | 4 | 06.07.2006 18:42 |
| problem!!! | PHP Tipps 2006 | 6 | 08.02.2006 11:06 | |
| [Erledigt] wieder ein Problem bei phpmailer und smtp | PHP Tipps 2006 | 24 | 07.02.2006 01:07 | |
| Problem mit Zeichensatz (xml,php) | HTML, Usability und Barrierefreiheit | 6 | 19.01.2005 14:14 | |
| [Erledigt] Problem mit Übergabe einer Klasse in PHP4 | PHP-Fortgeschrittene | 10 | 08.01.2005 21:00 | |
| Problem mit Weiterleitung | PHP Tipps 2004-2 | 16 | 22.12.2004 17:49 | |
| Smarty und PHP-Skript Problem | PHP Tipps 2004-2 | 2 | 03.12.2004 22:27 | |
| riesen problem mit zeichensatz. bitte hilfe | PHP Tipps 2004-2 | 6 | 29.11.2004 21:53 | |
| Problem mit alter JavaScript-Funktion | woods | PHP Tipps 2004 | 1 | 13.08.2004 13:34 |