TYPO3 UTF8-Umlautfixer

Beim Updaten von TYPO3 CMS über 4.4 zu 4.5 zu 4.7 besteht oftmals ein Problem mit UTF-8-Zeichensätzen in Datenbanken.

Häufigster Zeitpunkt dieser Problemstellung:

  • Upgrade/Update von TYPO3 CMS 4.2, 4.3 zu 4.3.
  • Upgrade/Update von TYPO3 CMS 4.5 zu 4.7
  • Upgrade/Update von TYPO3 CMS 4.5 zu 6.0
  • Upgrade/Update von TYPO3 CMS 4.5 zu 6.1

UTF-8 ist der Zeichensatz für Unicode, welcher zwischen ca. 2010 und 2013 in fast allen CMS und Softwarelösungen nach und nach weltweit als Standard durchgesetzt wurde. Wurden Texte oder auch Dateibezeichnungen bereits vorher mit nationalen Zeichensätzen ISO-* eingegeben, so müssen Sonderzeichen wie ä, ö, ü, ß oder aber auch Accent etc. in UTF-8 konvertiert werden.

UTF-8-Zeichen sind Doppel-Byte- oder auch Tripple-Byte-Zeichen, dh. für die Darstellung von einem einzigen Buchstaben werden hierbei nicht 1 Byte sondern eben 2 oder 3 und mehr Byte verwendet. Damit konnte die Anzahl der darstellbaren Zeichen z. B. auch für chinesisch oder osteuropäische Zeichen massiv erhöht werden.

Das Problem: Wenn aus irgendeinem Grunde diese Konvertierung zu einem Zeitpunkt nur teilweise durchgeführt wurde, kann das dazu führen, dass Software oder Datenbank diese UTF-8-Zeichen nicht korrekt als 1 Zeichen darstellt sondern mit etwas komisch anmutenden Spezialzeichen, mit unter auch als Hieroglyphen oder Datensalat bezeichnet. Sind diese Zeichen einmal in der Datei oder in der Datenbank, kann man das nur noch dadurch konvertieren, dass man diese Zeichen in der korrekten Reihenfolge in UTF-8-Zeichen zurückkonvertiert, dh. man macht aus 2 bis 3 dieser Hieroglyphen ein einziges korrektes UTF-8 Sonderzeichen.

STUELKENCOM hat für diese Konvertierung eigenes wegen TYPO3 ein Skript programmiert, mit dem wir über die deutschen Sonderzeichen hinaus auch bestimmte Satzzeichen wie z. B. französische oder deutsche Anführungstriche und andere Zeichen mehr rückwirkend wieder korrigieren können. Dieses Skript korrigiert NICHT alle möglichen Zeichen sondern beschränkt sich derzeit auf einen Satz von ca. 100 Zeichen der deutschen, englischen, französischen Sprache incl. Satzzeichen.

Wir setzen dieses Skript im Zuge der Updates der Webseiten unserer Kunden ein.