Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Problem mit Sonderzeichen nach Umstellung auf UTF-8 [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
ebiz-webhosting
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Problem mit Sonderzeichen nach Umstellung auf UTF-8


 
Forsaken
20-07-2010, 15:34 
 
Tag zusammen,

wir sind Heute beim umwandeln von Tabellen (latin -> utf8) auf ein sehr seltsames Problem gestoßen. Dabei geht es unter anderem um die "badwords" Tabelle mit einem Varchar als Unique-Key.

Sobald dieser Unique zum Beispiel "fälle" und "falle" enthält kommt ein duplicate key Fehler. Ob man die Tabelle erst umwandelt (index runter -> umwandeln -> index drauf) oder direkt versucht mit dem gesetzten Unique umzuwandeln spielt dabei keine Rolle.
Genauso tritt das Problem auf wenn man diese Einträge anlegen möchte.

Engine ist MyISAM, die default collation steht auf utf8_general_ci.


MfG
Jens aka Forsaken

 
eagle275
20-07-2010, 15:50 
 
uh . ich glaub das hängt damit zusammen, dass er für die "unique"-Prüfung einen Hash-wert berechnet - der ist zufällig identisch für die von dir beschriebenen Fälle .. hab es gerade auch bei mir mal getestet ..

bleibt die Frage, warum ausgerechnet die Bad-Words Tabelle ein unique braucht .. eins mehr oder weniger sollte keine große Rolle spielen

 
h3ll
20-07-2010, 16:27 
 
Schau mal in die Doku welche Bedeutung die unterschiedlichen utf8-Kollationen haben:

MySQL :: MySQL 5.1 Reference Manual :: 9.1.13.1 Unicode Character Sets (http://dev.mysql.com/doc/refman/5.1/en/charset-unicode-sets.html)


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:35 Uhr.