Umlaut Probleme nach Update auf neuere Randshop-Version einfach beheben

Manch einer hatte mit dem Randshop in Versionen vor 1.5 ganz schön mit den Umlauten zu kämpfen. Mit viel Probieren und manchmal ohne genau zu wissen warum, hat es meistens irgendwann doch noch geklappt.

Wenn man dann auf die 1.5.x oder höher updatet, kann es dazu kommen, dass einen der Umlaut-Wahnsinn wieder einholt. Ausgerechnet mit den Versionen, die die Umlaute jetzt im Griff haben sollten, werden Umlaute dann wieder nicht richtig dargestellt.

So ganz trivial ist die ganze Sache mit utf-8 auch nicht. Schließlich betrifft das nicht nur die Darstellung im Browser sondern auch das Speichern der Texte in der Datenbank. Bis die da korrekt landen gibt es für die deutschen Umlaute noch mehrere verschiedene Möglichkeiten um verkorkst zu werden.

Wen diese Thematik genauer interessiert, der kann sich ja mal den Thread Die Umlautproblematik - was, wieso, was tun? im MySQLDumper Board durchlesen. Aber Achtung, das ist richtig detailliert beschrieben und nichts für Ungeduldige. Dafür verschafft es aber einen sehr guten Überblick und man versteht (vielleicht) die Zusammenhänge.

Mittlerweile habe ich für den Randshop aber eine Erklärung und auch eine Lösung:

Durch eine Kombination von zwei Fehlern konnten bei 1.3.x und 1.4.x die Texte Iso-codiert statt utf-codiert in der Datenbank landen. (Vereinzelt sind da immer noch Demo-Texte falsch codiert drin ...) Die Kombination der beiden Fehler führt dazu, dass die Umlaute wieder richtig angezeigt werden und der Shopbetreiber fürs erste zufrieden ist.
Mit dem Update auf die 1.5.x oder neuer, wurde dann eine Version in Betrieb genommen, die die Datenbankverbindung auch bei seltsam konfigurierten Servern sauber utf-codiert hin bekommt. D.h. jetzt kommen die falsch in iso abgespeicherten Texte als vermeintliche utf8-Texte aus der Datenbank, ein ü sieht dann so aus: ü .

Auch ist es möglich, dass selbst erstellte Datenbanksicherungen versehentlich falsch codiert gespeichert werden. Z.B. durch die Verwendung eines nicht utf8-fähigen Editors. Der windowseigene Notepad ist solch ein Kandidat und kann damit ganz schönen Ärger verursachen. Wird dann so eine fehlerhafte Sicherung, z.B. im Rahmen eines Umzugs auf einen anderen Server, wieder zurückgespielt, sind die Umlaute eben fehlerhaft in der neuen Datenbank gespeichert.

Wie kann man jetzt die ganzen, mittlerweile zahlreichen Datensätze wieder korrigieren?

Für den beschriebenen Fall gibt es vom Entwickler des MySQLDumper ein kleines Tool, um die verkorksten Umlaute in der Datenbank wieder zu korrigieren. Das Teil nennt sich DUK und ist unter http://forum.mysqldumper.de/dsb-s-umlau ... t2406.html runterzuladen. Unter http://forum.mysqldumper.de/diskussion- ... t3420.html ist dann dazu der passende Diskussions-Thread.

Wichtig:

Obwohl das Tool recht einfach anzuwenden ist und bei mir auch tadellos funktioniert, kann ich nur dringend dazu raten, vorher die Datenbank zu sichern (am besten mit dem MySQLDumper) und die Informationen zum DUK vor der Anwendung auch wirklich zu lesen!!!

Kommentar abgeben: