[TYPO3-german] Suchfunktion findet keine Umlaute wenn BE inutf-8

Werner Remmers w.remmers at gmx.de
Thu Aug 31 13:44:40 CEST 2006


Hi,

erstmal vielen Dank für die Antwort, ich dachte wirklich ich bin mit diesem 
Problem alleine und verlassen auf der Typo3-Welt.

Peter schrieb:
> Allerdings hat sich bei unseren Versuchen gezeigt, dass das nicht immer
> so ist, und wir konnten keinen 100% verlässlichen Weg finden, das
> rauszufinden. Wenn der MySQL-Server nämlich wirklich *komplett* in
> seiner config auf utf8 umgestellt wurde, hat es plötzlich auch ohne
> DBinit funktioniert.

also du hast in dem Fall ein Luxus-Problem, entweder es funktioniert mit 
oder ohne DBinit, es funktioniert auf jeden Fall irgendwie. Ich wünschte das 
wäre bei mir der Fall.

Ich habe wirklich alle möglichen Kombinationen ausprobiert. Die Datenbank 
erstellt mit utf-8-Kollation, mit latin1, dann an den  Kollationen der 
Tabellenfelder rumgeschraubt, die DBinit gesetzt und wieder weggelassen, 
forceCharset auf utf-8 etc...
Letzendlich geht es nur wenn man forceCharset weglässt, dann wird ein ü 
(bzw. andere Umlaute) in der DB auch als ü gespeichert.

Ich frage mich inzwischen, ob das nicht auch Sinn der Sache ist, also, dass 
ein ü in der DB als ü gespeichert wird, wenn man forceCharset auf utf-8 
eingestellt hat. ü ist letztlich die richtige UTF-8-Konvertierung für ü. 
Speichere ich nämlich das ü als ü in der DB ab, dann kann das Backend damit 
nicht umgehen und zeigt an der Stelle ein Fragezeichen, nur wenn 
forceCharset nicht gesetzt ist, wird das Zeichen auch richtig angezeigt. 
D.h. also, dass das Backend bei aktiviertem forceCharset die Zeichen als 
utf-8-konvertiert erwartet, also lieber ein ü statt einem ü.

Oder irre ich mich da irgendwo?

Beste Grüße
Werner



----- Original Message ----- 
From: "Peter Niederlag" <niederlag at ikd01.de>
Newsgroups: typo3.german
To: <typo3-german at lists.netfielders.de>
Sent: Thursday, August 31, 2006 10:31 AM
Subject: Re: [TYPO3-german] Suchfunktion findet keine Umlaute wenn BE 
inutf-8


Hallo,

Werner Remmers schrieb:
> Hallo,
>
> die Such- bzw. Suchen & ersetzen-Funktion der BE-Extension Text
> Tools(cc_textfunc) findet keine Umlaute wenn ich das BE auf utf-8
> eingestellt habe.
>
> Ich habe eine mehrsprachige Seite, daher habe ich im
> Installationstool die Einstellung "[BE][forceCharset] = utf-8"
> gesetzt. Meine Datenbankkollation ist auf utf8_general_ci gesetzt.
> Mit diesen Einstellungen wird z.B. ein ü das ich im Backend eingebe
> als ü gespeichert, und als ü wieder angezeigt im Backend.

hmm, die Sache mit utf-8 ist IMO noch etwas komplizierter:

Hast Du im Install-Tool DBinit belegt? Ansonsten hast Du jetzt evtl.
leichten Murks.

Wenn Du in MySQL die Datenbank auf eines der utf8 Encodings gestellt
hast, dann brauchst Du um wirklich richtig und korrekt UTF-8 zu benutzen
im Install-Tool *meistens* noch folgende Einstellungen:

[BE][forceCharset] = utf-8
*und*
DBinit = SET NAMES utf-8\n SET CHARACTER SET utf-8"


Beim mysql_connect wird eine Verbindung aufgemacht, das Encoding dieser
Verbindung ist *typischerweise immer* latin1, egal was man tut. Wenn du
dann über diese Verbindung in eine utf8 kodierte Datenbank schreibst,
wird MySql die Daten ggf. nochmal konvertieren(!!!), da es davon ausgeht
dass latin1 Daten kommen, die in eine utf8 DB sollen.

Deswegen schickt man nach dem Connect diesen "set names" SQL-Befehl.
Damit wird die Verbindung auf das entsprechende Encoding umgestellt.

Allerdings hat sich bei unseren Versuchen gezeigt, dass das nicht immer
so ist, und wir konnten keinen 100% verlässlichen Weg finden, das
rauszufinden. Wenn der MySQL-Server nämlich wirklich *komplett* in
seiner config auf utf8 umgestellt wurde, hat es plötzlich auch ohne
DBinit funktioniert.

TIP:
Wenn phpmyadmin die Umlaute korrekt anzeigt ists gut, wenn nicht läuft
was schief.

hdh,
Peter
-- 
Peter Niederlag
http://www.niekom.de * TYPO3 & EDV Dienstleistungen *
http://www.typo3partner.net * professional services network *
_______________________________________________
TYPO3-german mailing list
TYPO3-german at lists.netfielders.de
http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german






More information about the TYPO3-german mailing list