Discussion:
[TYPO3-german] TYPO3 und UTF-8 - brauche Hilfe
Julia Eberstein
2008-02-10 06:49:28 UTC
Permalink
Hallo alle zusammen,

bei einer neuen TYPO3-Installation sollen mittelfristig auch die
Sprachen russisch und chinesisch integriert werden. Daher f?hrt an
UTF-8 kein Weg vorbei.

Wie ist das jetzt mit den genauen Einstellungen?

Unter All Configuration habe ich diese Werte eingetragen:

$TYPO3_CONF_VARS['BE']['forceCharset'] = utf-8
[SYS][UTF8filesystem] = 1

Nur wie ist das mit der MySQL-Kollation? Standardm??ig steht sie bei
mir auf latin1_swedish_ci. Muss diese Einstellung ge?ndert werden?
Wenn ja, in welchen Wert soll ich sie ?ndern?

Vielen Dank f?r Eure Hilfe und liebe Gr??e

Julia
Andreas Becker
2008-02-10 08:43:03 UTC
Permalink
Hi Julia

Localconf.php

oberhalb dem Installtoken einfuegen
-----------------------------------------------

// UTF8
$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf-8';
$TYPO3_CONF_VARS['SYS']['setDBinit'] = 'SET NAMES utf8;'.chr(10).'SET
SESSION character_set_server=utf8;';
$TYPO3_CONF_VARS['SYS']['t3lib_cs_convMethod'] = 'iconv';
$TYPO3_CONF_VARS['SYS']['t3lib_cs_utils'] = 'iconv';
$TYPO3_CONF_VARS['SYS']['UTF8filesystem'] = '1';

============================

my.cnf
----------------------------

# The MySQL server
[mysqld]
basedir="D:/xampp/mysql"
tmpdir="D:/xampp/tmp"
datadir="D:/xampp/mysql/data"

port = 3306
socket = mysql

character-set-server = utf8
collation-server = utf8_unicode_ci

=======================================

apache httpd.conf
----------------------------------------
AddCharset UTF-8 .utf8 - (standard)

========================================

TYPOSCRIPT
---------------------------------------
config {
renderCharset = utf-8
metaCharset = utf-8
doctype = xhtml_trans
xhtmlDoctype = xhtml_trans
xmlprologue = none
htmlTag_langKey = en
}



Hoffe das hilft ein wenig :-)

Gruss
Andi
Julia Eberstein
2008-02-10 09:27:38 UTC
Permalink
Hallo Andi,

vielen Dank f?r Deine Antwort. Das h?rt sich ja sehr aufwendig an.
Leider habe ich keinen Zugriff auf die my.cnf Datei oder die Apache
httpd.conf. Von daher hoffe ich, dass ich auch irgendwie "einfacher"
zum Ziel komme.

?ber phpMyAdmin habe ich vollen Zugriff auf die Datenbank. Die
Tabellen haben die Kollation "latin1_swedish_ci". Ich dachte es w?rde
ausreichen, die Tabellen auf eine UTF-8 Kollation zu ?ndern.
Dummerweise bietet phpMyAdmin sehr viele UTF-8 -Typen an:
utf8_bin, ... utf8_unicode_ci usw.

Welchen UTF-8 -Typ muss ich ausw?hlen? ... oder ist es damit nicht
getan? ... muss ich tats?chlich an die Confdateien von Apache und
MySQL ran?

... es geht mir um die russischen und chinesischen Zeichens?tze.

Liebe Gr??e
Julia
Post by Andreas Becker
Hi Julia
Localconf.php
oberhalb dem Installtoken einfuegen
-----------------------------------------------
// UTF8
$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf-8';
$TYPO3_CONF_VARS['SYS']['setDBinit'] = 'SET NAMES utf8;'.chr(10).'SET
SESSION character_set_server=utf8;';
$TYPO3_CONF_VARS['SYS']['t3lib_cs_convMethod'] = 'iconv';
$TYPO3_CONF_VARS['SYS']['t3lib_cs_utils'] = 'iconv';
$TYPO3_CONF_VARS['SYS']['UTF8filesystem'] = '1';
============================
my.cnf
----------------------------
# The MySQL server
[mysqld]
basedir="D:/xampp/mysql"
tmpdir="D:/xampp/tmp"
datadir="D:/xampp/mysql/data"
port = 3306
socket = mysql
character-set-server = utf8
collation-server = utf8_unicode_ci
=======================================
apache httpd.conf
----------------------------------------
AddCharset UTF-8 .utf8 - (standard)
========================================
TYPOSCRIPT
---------------------------------------
config {
renderCharset = utf-8
metaCharset = utf-8
doctype = xhtml_trans
xhtmlDoctype = xhtml_trans
xmlprologue = none
htmlTag_langKey = en
}
Hoffe das hilft ein wenig :-)
Gruss
Andi
_______________________________________________
TYPO3-german mailing list
TYPO3-german at lists.netfielders.de
http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german
Steffen Kamper
2008-02-10 10:11:54 UTC
Permalink
"Julia Eberstein" <julia.eberstein at googlemail.com> schrieb im Newsbeitrag
news:mailman.88.1202635670.5943.typo3-german at lists.netfielders.de...
Hallo Andi,

vielen Dank f?r Deine Antwort. Das h?rt sich ja sehr aufwendig an.
Leider habe ich keinen Zugriff auf die my.cnf Datei oder die Apache
httpd.conf. Von daher hoffe ich, dass ich auch irgendwie "einfacher"
zum Ziel komme.

?ber phpMyAdmin habe ich vollen Zugriff auf die Datenbank. Die
Tabellen haben die Kollation "latin1_swedish_ci". Ich dachte es w?rde
ausreichen, die Tabellen auf eine UTF-8 Kollation zu ?ndern.
Dummerweise bietet phpMyAdmin sehr viele UTF-8 -Typen an:
utf8_bin, ... utf8_unicode_ci usw.

Welchen UTF-8 -Typ muss ich ausw?hlen? ... oder ist es damit nicht
getan? ... muss ich tats?chlich an die Confdateien von Apache und
MySQL ran?

... es geht mir um die russischen und chinesischen Zeichens?tze.

Liebe Gr??e
Julia


Hi,

utf8_general_ci

aber das wird bei Dir Zeichensalat erzeugen, da die vorhandenen Inhalte in
latin gespeichert wurden. Es geht auch nicht um die Kollation sondern um
Charset.

Also am Besten:
- Dump machen
- DB l?schen
- DB neu anlegen mit charset utf8
- Dump bearbeiten und bei den create-Anweisungen in utf8 ?ndern
- Dump einspielen.

Damit hast Du 95% der Probleme gel?st

vg Steffen
Dr. Ronald P. Steiner
2008-02-10 11:29:09 UTC
Permalink
Hallo Julia,

ich habe das so gemacht:

1) in phpMyAdmin folgenden SQL-Befehl eingeben:
CREATE DATABASE webapp
DEFAULT CHARACTER SET utf8;

2) nochmal in phpMyAdmin folgenden SQL-Befehl eingeben:
CREATE TABLE gadgets (
name VARCHAR(255) PRIMARY KEY,
rating INT
) DEFAULT CHARACTER SET utf8;

3) nochmal vergewissern dass in phpMyAdmin -> home wirklich "Kollation:
utf8_unicode_ci" steht.

4) Die ganze Datenbank als SQL-File exportieren. ("Vollst?ndige Inserts"
"Senden" "keine Kompression")

5) In dieser recht gro?en Datei ersetzt Du nun:
latin1_general_ci -> utf8_unicode_ci
latin1 -> utf8

6) Nun l?scht Du alle Tabellen in der Datenbank.

7) ... und erzeugst aus Deinem in 5) bearbeiteten SQL-File den ganzen
Inhalt wieder neu. Falls die Datei zu gro? ist, musst Du sie in kleinere
H?ppchen aufsplitten. - Falls Du damit Probleme hast maile einfach nochmal.

8) Im Install-Tool setzt Du nun:
$GLOBALS['TYPO3_CONF_VARS']['BE']['forceCharset'] = 'utf-8';
$GLOBALS['TYPO3_CONF_VARS']['SYS']['multiplyDBfieldSize'] = 3;
multiplyDBfieldSize ist n?tig, da chinesische Zeichen mehr Stellen
ben?tigen. Jedoch gibt diese Einstellung regelm??ig Probleme bei der
Installation diverser Extensions. Daher solltest Du diese Einstellung
erst ganz zum Schluss setzen.
[SYS][UTF8filesystem] = 1 - habe ich aktuell nicht gesetzt. Bei mir
funktioniert es aktuell auch ohne gut. Ich hatte das mal ausprobiert und
mir damit eine Menge Probleme eingehandelt.

So funktioniert's bei mir. Hoffe das hilft Dir weiter.

beste Gr??e

Ron
Post by Julia Eberstein
Hallo Andi,
vielen Dank f?r Deine Antwort. Das h?rt sich ja sehr aufwendig an.
Leider habe ich keinen Zugriff auf die my.cnf Datei oder die Apache
httpd.conf. Von daher hoffe ich, dass ich auch irgendwie "einfacher"
zum Ziel komme.
?ber phpMyAdmin habe ich vollen Zugriff auf die Datenbank. Die
Tabellen haben die Kollation "latin1_swedish_ci". Ich dachte es w?rde
ausreichen, die Tabellen auf eine UTF-8 Kollation zu ?ndern.
utf8_bin, ... utf8_unicode_ci usw.
Welchen UTF-8 -Typ muss ich ausw?hlen? ... oder ist es damit nicht
getan? ... muss ich tats?chlich an die Confdateien von Apache und
MySQL ran?
... es geht mir um die russischen und chinesischen Zeichens?tze.
Liebe Gr??e
Julia
Post by Andreas Becker
Hi Julia
Localconf.php
oberhalb dem Installtoken einfuegen
-----------------------------------------------
// UTF8
$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf-8';
$TYPO3_CONF_VARS['SYS']['setDBinit'] = 'SET NAMES utf8;'.chr(10).'SET
SESSION character_set_server=utf8;';
$TYPO3_CONF_VARS['SYS']['t3lib_cs_convMethod'] = 'iconv';
$TYPO3_CONF_VARS['SYS']['t3lib_cs_utils'] = 'iconv';
$TYPO3_CONF_VARS['SYS']['UTF8filesystem'] = '1';
============================
my.cnf
----------------------------
# The MySQL server
[mysqld]
basedir="D:/xampp/mysql"
tmpdir="D:/xampp/tmp"
datadir="D:/xampp/mysql/data"
port = 3306
socket = mysql
character-set-server = utf8
collation-server = utf8_unicode_ci
=======================================
apache httpd.conf
----------------------------------------
AddCharset UTF-8 .utf8 - (standard)
========================================
TYPOSCRIPT
---------------------------------------
config {
renderCharset = utf-8
metaCharset = utf-8
doctype = xhtml_trans
xhtmlDoctype = xhtml_trans
xmlprologue = none
htmlTag_langKey = en
}
Hoffe das hilft ein wenig :-)
Gruss
Andi
_______________________________________________
TYPO3-german mailing list
TYPO3-german at lists.netfielders.de
http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german
Julia Eberstein
2008-02-10 13:43:10 UTC
Permalink
Hallo Steffen und Ronald,

danke f?r Eure Antworten.

@Ronald
Deine Schritte 1 und 2 verstehe ich nicht ganz.

Zu 1)
Warum soll ich eine Datenbank webapp erzeugen? Au?erdem fehlen mir die
Rechte f?r die Erzeugung einer zus?tzlichen DB!

Zu 2)
Ich habe die Tabell gadgets erzeugt. Nur welche Aufgabe ?bernimmt Sie?
Ich verstehe den Sinn nicht ganz.

Zu 3)
Kollation: utf8_unicode_ci steht jetzt nat?rlich NUR bei der neu
erzeugten Tabelle gadgets - nicht bei den bereits vorhandenen.

Die anderen Schritte sind klar!

?brigens: Die Installation ist ganz "frisch" - es ist also noch kein
vorhandener Content da. Daher kann meiner Meinung auch kein
Zeichensalat durch die Migration erfolgen.


Liebe Gr??e
Julia
Post by Dr. Ronald P. Steiner
Hallo Julia,
CREATE DATABASE webapp
DEFAULT CHARACTER SET utf8;
CREATE TABLE gadgets (
name VARCHAR(255) PRIMARY KEY,
rating INT
) DEFAULT CHARACTER SET utf8;
utf8_unicode_ci" steht.
4) Die ganze Datenbank als SQL-File exportieren. ("Vollst?ndige Inserts"
"Senden" "keine Kompression")
latin1_general_ci -> utf8_unicode_ci
latin1 -> utf8
6) Nun l?scht Du alle Tabellen in der Datenbank.
7) ... und erzeugst aus Deinem in 5) bearbeiteten SQL-File den ganzen
Inhalt wieder neu. Falls die Datei zu gro? ist, musst Du sie in kleinere
H?ppchen aufsplitten. - Falls Du damit Probleme hast maile einfach nochmal.
$GLOBALS['TYPO3_CONF_VARS']['BE']['forceCharset'] = 'utf-8';
$GLOBALS['TYPO3_CONF_VARS']['SYS']['multiplyDBfieldSize'] = 3;
multiplyDBfieldSize ist n?tig, da chinesische Zeichen mehr Stellen
ben?tigen. Jedoch gibt diese Einstellung regelm??ig Probleme bei der
Installation diverser Extensions. Daher solltest Du diese Einstellung
erst ganz zum Schluss setzen.
[SYS][UTF8filesystem] = 1 - habe ich aktuell nicht gesetzt. Bei mir
funktioniert es aktuell auch ohne gut. Ich hatte das mal ausprobiert und
mir damit eine Menge Probleme eingehandelt.
So funktioniert's bei mir. Hoffe das hilft Dir weiter.
beste Gr??e
Ron
Post by Julia Eberstein
Hallo Andi,
vielen Dank f?r Deine Antwort. Das h?rt sich ja sehr aufwendig an.
Leider habe ich keinen Zugriff auf die my.cnf Datei oder die Apache
httpd.conf. Von daher hoffe ich, dass ich auch irgendwie "einfacher"
zum Ziel komme.
?ber phpMyAdmin habe ich vollen Zugriff auf die Datenbank. Die
Tabellen haben die Kollation "latin1_swedish_ci". Ich dachte es w?rde
ausreichen, die Tabellen auf eine UTF-8 Kollation zu ?ndern.
utf8_bin, ... utf8_unicode_ci usw.
Welchen UTF-8 -Typ muss ich ausw?hlen? ... oder ist es damit nicht
getan? ... muss ich tats?chlich an die Confdateien von Apache und
MySQL ran?
... es geht mir um die russischen und chinesischen Zeichens?tze.
Liebe Gr??e
Julia
Post by Andreas Becker
Hi Julia
Localconf.php
oberhalb dem Installtoken einfuegen
-----------------------------------------------
// UTF8
$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf-8';
$TYPO3_CONF_VARS['SYS']['setDBinit'] = 'SET NAMES utf8;'.chr(10).'SET
SESSION character_set_server=utf8;';
$TYPO3_CONF_VARS['SYS']['t3lib_cs_convMethod'] = 'iconv';
$TYPO3_CONF_VARS['SYS']['t3lib_cs_utils'] = 'iconv';
$TYPO3_CONF_VARS['SYS']['UTF8filesystem'] = '1';
============================
my.cnf
----------------------------
# The MySQL server
[mysqld]
basedir="D:/xampp/mysql"
tmpdir="D:/xampp/tmp"
datadir="D:/xampp/mysql/data"
port = 3306
socket = mysql
character-set-server = utf8
collation-server = utf8_unicode_ci
=======================================
apache httpd.conf
----------------------------------------
AddCharset UTF-8 .utf8 - (standard)
========================================
TYPOSCRIPT
---------------------------------------
config {
renderCharset = utf-8
metaCharset = utf-8
doctype = xhtml_trans
xhtmlDoctype = xhtml_trans
xmlprologue = none
htmlTag_langKey = en
}
Hoffe das hilft ein wenig :-)
Gruss
Andi
_______________________________________________
TYPO3-german mailing list
TYPO3-german at lists.netfielders.de
http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german
_______________________________________________
TYPO3-german mailing list
TYPO3-german at lists.netfielders.de
http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german
Dr. Ronald P. Steiner
2008-02-10 14:38:57 UTC
Permalink
Hallo Julia,

Punkt 1) und 2) sind hier nicht relevant. ... hast ja recht. - unn?tig.
Das war mal f?r ein anderes Projekt. ... Tshuldigung

Zu Punkt 3 wichtig ist dass Du f?r die ganze Datenbank die Kollation auf
utf8_unicode_ci stellst. (unter "Operationen" im phpMyAdmin)und
generell den MySQL-Zeichensatz auf utf8_general_ci stellst (unter "Home"
im phpMyAdmin).

beste Gr??e

Ron
Post by Julia Eberstein
Hallo Steffen und Ronald,
danke f?r Eure Antworten.
@Ronald
Deine Schritte 1 und 2 verstehe ich nicht ganz.
Zu 1)
Warum soll ich eine Datenbank webapp erzeugen? Au?erdem fehlen mir die
Rechte f?r die Erzeugung einer zus?tzlichen DB!
Zu 2)
Ich habe die Tabell gadgets erzeugt. Nur welche Aufgabe ?bernimmt Sie?
Ich verstehe den Sinn nicht ganz.
Zu 3)
Kollation: utf8_unicode_ci steht jetzt nat?rlich NUR bei der neu
erzeugten Tabelle gadgets - nicht bei den bereits vorhandenen.
Die anderen Schritte sind klar!
?brigens: Die Installation ist ganz "frisch" - es ist also noch kein
vorhandener Content da. Daher kann meiner Meinung auch kein
Zeichensalat durch die Migration erfolgen.
Liebe Gr??e
Julia
Post by Dr. Ronald P. Steiner
Hallo Julia,
CREATE DATABASE webapp
DEFAULT CHARACTER SET utf8;
CREATE TABLE gadgets (
name VARCHAR(255) PRIMARY KEY,
rating INT
) DEFAULT CHARACTER SET utf8;
utf8_unicode_ci" steht.
4) Die ganze Datenbank als SQL-File exportieren. ("Vollst?ndige Inserts"
"Senden" "keine Kompression")
latin1_general_ci -> utf8_unicode_ci
latin1 -> utf8
6) Nun l?scht Du alle Tabellen in der Datenbank.
7) ... und erzeugst aus Deinem in 5) bearbeiteten SQL-File den ganzen
Inhalt wieder neu. Falls die Datei zu gro? ist, musst Du sie in kleinere
H?ppchen aufsplitten. - Falls Du damit Probleme hast maile einfach nochmal.
$GLOBALS['TYPO3_CONF_VARS']['BE']['forceCharset'] = 'utf-8';
$GLOBALS['TYPO3_CONF_VARS']['SYS']['multiplyDBfieldSize'] = 3;
multiplyDBfieldSize ist n?tig, da chinesische Zeichen mehr Stellen
ben?tigen. Jedoch gibt diese Einstellung regelm??ig Probleme bei der
Installation diverser Extensions. Daher solltest Du diese Einstellung
erst ganz zum Schluss setzen.
[SYS][UTF8filesystem] = 1 - habe ich aktuell nicht gesetzt. Bei mir
funktioniert es aktuell auch ohne gut. Ich hatte das mal ausprobiert und
mir damit eine Menge Probleme eingehandelt.
So funktioniert's bei mir. Hoffe das hilft Dir weiter.
beste Gr??e
Ron
Post by Julia Eberstein
Hallo Andi,
vielen Dank f?r Deine Antwort. Das h?rt sich ja sehr aufwendig an.
Leider habe ich keinen Zugriff auf die my.cnf Datei oder die Apache
httpd.conf. Von daher hoffe ich, dass ich auch irgendwie "einfacher"
zum Ziel komme.
?ber phpMyAdmin habe ich vollen Zugriff auf die Datenbank. Die
Tabellen haben die Kollation "latin1_swedish_ci". Ich dachte es w?rde
ausreichen, die Tabellen auf eine UTF-8 Kollation zu ?ndern.
utf8_bin, ... utf8_unicode_ci usw.
Welchen UTF-8 -Typ muss ich ausw?hlen? ... oder ist es damit nicht
getan? ... muss ich tats?chlich an die Confdateien von Apache und
MySQL ran?
... es geht mir um die russischen und chinesischen Zeichens?tze.
Liebe Gr??e
Julia
Post by Andreas Becker
Hi Julia
Localconf.php
oberhalb dem Installtoken einfuegen
-----------------------------------------------
// UTF8
$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf-8';
$TYPO3_CONF_VARS['SYS']['setDBinit'] = 'SET NAMES utf8;'.chr(10).'SET
SESSION character_set_server=utf8;';
$TYPO3_CONF_VARS['SYS']['t3lib_cs_convMethod'] = 'iconv';
$TYPO3_CONF_VARS['SYS']['t3lib_cs_utils'] = 'iconv';
$TYPO3_CONF_VARS['SYS']['UTF8filesystem'] = '1';
============================
my.cnf
----------------------------
# The MySQL server
[mysqld]
basedir="D:/xampp/mysql"
tmpdir="D:/xampp/tmp"
datadir="D:/xampp/mysql/data"
port = 3306
socket = mysql
character-set-server = utf8
collation-server = utf8_unicode_ci
=======================================
apache httpd.conf
----------------------------------------
AddCharset UTF-8 .utf8 - (standard)
========================================
TYPOSCRIPT
---------------------------------------
config {
renderCharset = utf-8
metaCharset = utf-8
doctype = xhtml_trans
xhtmlDoctype = xhtml_trans
xmlprologue = none
htmlTag_langKey = en
}
Hoffe das hilft ein wenig :-)
Gruss
Andi
_______________________________________________
TYPO3-german mailing list
TYPO3-german at lists.netfielders.de
http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german
_______________________________________________
TYPO3-german mailing list
TYPO3-german at lists.netfielders.de
http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german
Andreas Becker
2008-02-11 04:56:20 UTC
Permalink
Hallo Julia

Wir haben eine Datenbank ca.100.000 Records mittels wordpress utf8
conversion tool / mysqldumper erfolgreich konvertiert

1. Datenbank mittels MySQLDumper exportieren in utf8
2. Wordpress In die TYPO3 Datenbank installieren. Es legt 10 wp_ tabellen
an, die man spaeter dann wieder loescht
3. das utf8 conversion plugin von wordpress installieren und die conversion
durchfuehren.
Achtung. Das WP conversiontool exportierte zwar alle Tabellen und
aenderte ueberall die bezeichnungen in utf_unicode_ci, jedoch wurden einge
Tabelleninhalte nicht in voller laenge uebernommen.
daher:
4. dort wo Inhalte fehlten leerten wird die Tabllen (TRUNC) und fuellten den
Inhalten aus dem nach utf8 convertierten MySQL dump mittels phpmyadmin ein.

Das funktionierte bei uns ohne Probleme und war recht flott.

5. Zum Schluss haben wir wordpress - also alle wp_ Tabellen wieder aus der
TYPO3 Datenbank geloescht.

-----------------------------------
MySql dump ca. 8 Minuten
Installation wordpress incl Datenbank erstellung und Plugin ca. 10 Minuten
Convertierung mittels wordpress ca. 5 Minuten
Austauschen der tabellen tt_content mit 20.000 records ca. 10 Minuten
-----------------------------------
30-45 Minuten solltest du also einkalkulieren.

Was macht wordpress:
Neben der Conversion ALLER in der Datenbank vorhandenen Tabelleninhalte nach
utf8 (das macht auch mysqldumper beim exprot der Tabelle in utf8) ersetzt
der Plugin alle latin_general_ci settings in utf8_unicode_ci. Das manuelle
Abaendern dieser Settings entfaellt damit.

-----------------------------------
Willst du NUR Mysqldumper benutzen, dann musst du den dump entpacken und in
z.b. notepad oder pspad oeffnen und dann alle latin settings in utf8
settings mittels suchen/ersezten abaendern. Im Notepad oder PSPad speicherst
du dann das ergebnis wiederum in utf8 ab und importierst dann das ganze in
eine LEERE Datenbank die du zuvor bereits als utf8 und collation:
utf8_unicode_ci oder utf8_general_ci eingestellt hast.

Das ganze laesst sich auch Tabelle pro Tabelle machen.
willst du nur die Inhalte Importieren so kannst Du auch das SQL-Feld in
PhPMyadmin nutzen und hier alle INSERTS einer Tabelle reinkopieren.

Viel Erfolg

Andi
Michael Stucki
2008-02-11 09:51:51 UTC
Permalink
Post by Andreas Becker
Localconf.php
// UTF8
$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf-8';
$TYPO3_CONF_VARS['SYS']['setDBinit'] = 'SET NAMES utf8;'.chr(10).'SET
SESSION character_set_server=utf8;';
$TYPO3_CONF_VARS['SYS']['t3lib_cs_convMethod'] = 'iconv';
$TYPO3_CONF_VARS['SYS']['t3lib_cs_utils'] = 'iconv';
$TYPO3_CONF_VARS['SYS']['UTF8filesystem'] = '1';
Alles korrekt, ausser:
Wenn man nat?rlich sowieso schon die my.cnf anpasst, dann kann man auf
die "setDBinit"-Anweisung verzichten und spart sich so _jedes_ Mal zwei
Post by Andreas Becker
my.cnf
----------------------------
character-set-server = utf8
collation-server = utf8_unicode_ci
Collation-Server sollte automatisch richtig gesetzt werden, da dies die
Default-Collation von utf8 ist.

Wichtig ist daf?r das hier noch:
skip-character-set-client-handshake

Das ersetzt sozusagen die setDBinit-Angabe von vorher, und der Client nutzt
dasselbe Charset wie der Server.
Post by Andreas Becker
TYPOSCRIPT
---------------------------------------
config {
renderCharset = utf-8
metaCharset = utf-8
Kann man auch sein lassen, die werden beide automatisch gesetzt wenn
forceCharset aktiv ist.

Liebe Gr?sse
- michael
--
Use a newsreader! Check out
http://typo3.org/community/mailing-lists/use-a-news-reader/
Julia Eberstein
2008-02-11 16:10:32 UTC
Permalink
Hallo,

danke f?r Eure Antworten. Wenn man mal im Netz ein wenig nach dem
Thema "TYPO3 / utf-8" st?bert, finden man eine Menge Anleitungen. Das
dumme ist nur: Irgendwie unterscheiden sich alle Anleitungen mehr oder
weniger voneinander.

Da es bei mir um eine frische TYPO3-Installation (leere DB) geht, habe
ich nicht das Wordpress-Tool zum Konvertieren verwendet.

Stattdessen bin ich wie folgt vorgegangen:


1) All Configuartion
$TYPO3_CONF_VARS['BE']['forceCharset'] = utf-8
[multiplyDBfieldSize] = 3
[setDBinit] = SET NAMES utf8;
SET SESSION character_set_server=utf8;
[UTF8filesystem] = 1
[t3lib_cs_convMethod] = iconv
[t3lib_cs_utils] = iconv

2) Typoscript
config.metaCharset = utf-8
config.renderCharset = utf-8

3) PHPMyAdmin
Home / Kollation der MySQL-Verbindung: utf8_unicode_ci

4) Dump der bestehenden DB

5) Suchen und ersetzen in DB
latin1 -> utf8

6) Dump aufspielen

Ich hoffe ich habe alles richtig gemacht - und nichts vergessen.

Frage: Wenn ich jetzt Extensions installiere werden doch die
zugeh?rigen Tabellen gleich im utf8-Format angelegt, oder? Ich muss
doch nicht bei jeder Extension, die ich sp?ter installiere die
Tabellenformatierung manuell ?ndern, oder?

LG
Julia
Post by Michael Stucki
Post by Andreas Becker
Localconf.php
// UTF8
$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf-8';
$TYPO3_CONF_VARS['SYS']['setDBinit'] = 'SET NAMES utf8;'.chr(10).'SET
SESSION character_set_server=utf8;';
$TYPO3_CONF_VARS['SYS']['t3lib_cs_convMethod'] = 'iconv';
$TYPO3_CONF_VARS['SYS']['t3lib_cs_utils'] = 'iconv';
$TYPO3_CONF_VARS['SYS']['UTF8filesystem'] = '1';
Wenn man nat?rlich sowieso schon die my.cnf anpasst, dann kann man auf
die "setDBinit"-Anweisung verzichten und spart sich so _jedes_ Mal zwei
Post by Andreas Becker
my.cnf
----------------------------
character-set-server = utf8
collation-server = utf8_unicode_ci
Collation-Server sollte automatisch richtig gesetzt werden, da dies die
Default-Collation von utf8 ist.
skip-character-set-client-handshake
Das ersetzt sozusagen die setDBinit-Angabe von vorher, und der Client nutzt
dasselbe Charset wie der Server.
Post by Andreas Becker
TYPOSCRIPT
---------------------------------------
config {
renderCharset = utf-8
metaCharset = utf-8
Kann man auch sein lassen, die werden beide automatisch gesetzt wenn
forceCharset aktiv ist.
Liebe Gr?sse
- michael
--
Use a newsreader! Check out
http://typo3.org/community/mailing-lists/use-a-news-reader/
_______________________________________________
TYPO3-german mailing list
TYPO3-german at lists.netfielders.de
http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german
Dr. Ronald P. Steiner
2008-02-11 18:24:43 UTC
Permalink
Post by Julia Eberstein
Hallo,
danke f?r Eure Antworten. Wenn man mal im Netz ein wenig nach dem
Thema "TYPO3 / utf-8" st?bert, finden man eine Menge Anleitungen. Das
dumme ist nur: Irgendwie unterscheiden sich alle Anleitungen mehr oder
weniger voneinander.
Da es bei mir um eine frische TYPO3-Installation (leere DB) geht, habe
ich nicht das Wordpress-Tool zum Konvertieren verwendet.
1) All Configuartion
$TYPO3_CONF_VARS['BE']['forceCharset'] = utf-8
[multiplyDBfieldSize] = 3
[setDBinit] = SET NAMES utf8;
SET SESSION character_set_server=utf8;
[UTF8filesystem] = 1
[t3lib_cs_convMethod] = iconv
[t3lib_cs_utils] = iconv
2) Typoscript
config.metaCharset = utf-8
config.renderCharset = utf-8
3) PHPMyAdmin
Home / Kollation der MySQL-Verbindung: utf8_unicode_ci
4) Dump der bestehenden DB
5) Suchen und ersetzen in DB
latin1 -> utf8
falls Du das so gemacht hast ergibt das: utf8_general_ci anstatt
utf8_unicode_ci
Du solltest besser so umbenennen:

latin1_general_ci -> utf8_unicode_ci
latin1 -> utf8
Post by Julia Eberstein
6) Dump aufspielen
Ich hoffe ich habe alles richtig gemacht - und nichts vergessen.
Frage: Wenn ich jetzt Extensions installiere werden doch die
zugeh?rigen Tabellen gleich im utf8-Format angelegt, oder? Ich muss
doch nicht bei jeder Extension, die ich sp?ter installiere die
Tabellenformatierung manuell ?ndern, oder?
LG
Julia
Post by Michael Stucki
Post by Andreas Becker
Localconf.php
// UTF8
$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf-8';
$TYPO3_CONF_VARS['SYS']['setDBinit'] = 'SET NAMES utf8;'.chr(10).'SET
SESSION character_set_server=utf8;';
$TYPO3_CONF_VARS['SYS']['t3lib_cs_convMethod'] = 'iconv';
$TYPO3_CONF_VARS['SYS']['t3lib_cs_utils'] = 'iconv';
$TYPO3_CONF_VARS['SYS']['UTF8filesystem'] = '1';
Wenn man nat?rlich sowieso schon die my.cnf anpasst, dann kann man auf
die "setDBinit"-Anweisung verzichten und spart sich so _jedes_ Mal zwei
Post by Andreas Becker
my.cnf
----------------------------
character-set-server = utf8
collation-server = utf8_unicode_ci
Collation-Server sollte automatisch richtig gesetzt werden, da dies die
Default-Collation von utf8 ist.
skip-character-set-client-handshake
Das ersetzt sozusagen die setDBinit-Angabe von vorher, und der Client nutzt
dasselbe Charset wie der Server.
Post by Andreas Becker
TYPOSCRIPT
---------------------------------------
config {
renderCharset = utf-8
metaCharset = utf-8
Kann man auch sein lassen, die werden beide automatisch gesetzt wenn
forceCharset aktiv ist.
Liebe Gr?sse
- michael
--
Use a newsreader! Check out
http://typo3.org/community/mailing-lists/use-a-news-reader/
_______________________________________________
TYPO3-german mailing list
TYPO3-german at lists.netfielders.de
http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german
Andreas Becker
2008-02-12 02:35:01 UTC
Permalink
Hi Julia

[multiplyDBfieldSize] = 3 benutzen wir nicht wenn die datenbank grundauf
auf utf8 betrieben wird.
Post by Andreas Becker
TYPOSCRIPT
Post by Andreas Becker
---------------------------------------
config {
renderCharset = utf-8
metaCharset = utf-8
Kann man auch sein lassen, die werden beide automatisch gesetzt wenn
forceCharset aktiv ist.

Speicherst du deine Datenbank mit MysqlDumper ab > denn hier kann man backup
in utf8 einstellen > bist Du ziemlich auf er sicheren Seite das es danach
funktioniert. Dann ist der naechste Schritt, den du gemacht hast - latin in
utf8 umaendern und dann ueber phpmyadmin importieren.

ACHTUNG:
Die Tatsache, dass Du die Datenbank exportierst und in die neuen Settings
importierst heisst leider noch nicht, dass auch alle Character in UTF8
richtig dargestellt werden. In der Regel klappt es ganz gut, aber es kann
Probleme mit serialized Data geben.

Diese seralized Data muss man zuerst unserializen - koncertieren in utf 8
und serializen.

Keine Probleme duerfte es geben wenn du die Datenbank in Binaries
abspeicherst dann konvertierst, und schliesslich wider zurueck importierst,
dabei werden die serialized Data durch die Konvertierung nicht veraendert.
Post by Andreas Becker
Post by Andreas Becker
Aber wie gesagt, probiere erst einmal deine Datenbank aus ob alles
funktioniert. Wir haben die Erfahrung gemacht, dass das serialized Problem
nur sehr selten und wenn nur an wenigen Stellen vorkam.

Gruss
Andi
Andreas Becker
2008-02-12 02:48:40 UTC
Permalink
Nachtrag

Hallo Julia

Suche in Deiner Datenbank einmal nach den folgenden Strings

Apostrophe - ?????

Hyphen - ?????
Hyphen - ?????

Empty space ???

bzw ?

solltest Du keiner dieser finden duerfte alles OK sein.

Andi
Julia Eberstein
2008-02-12 14:50:01 UTC
Permalink
Hallo Andi vielen Dank f?r Deinen Tipp,

habe in meiner DB nach den Strings gesucht und zum Gl?ck nichts
gefunden. Von daher scheint ja (hoffentlich) alles ok zu sen ;-)

Vielen Dank f?r Deine Tipps.
Julia
Post by Andreas Becker
Nachtrag
Hallo Julia
Suche in Deiner Datenbank einmal nach den folgenden Strings
Apostrophe - ?????
Hyphen - ?????
Hyphen - ????
Empty space ???
bzw ?
solltest Du keiner dieser finden duerfte alles OK sein.
Andi
_______________________________________________
TYPO3-german mailing list
TYPO3-german at lists.netfielders.de
http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german
Michael Stucki
2008-02-14 18:38:42 UTC
Permalink
Hallo Julia,
Post by Julia Eberstein
danke f?r Eure Antworten. Wenn man mal im Netz ein wenig nach dem
Thema "TYPO3 / utf-8" st?bert, finden man eine Menge Anleitungen. Das
dumme ist nur: Irgendwie unterscheiden sich alle Anleitungen mehr oder
weniger voneinander.
Da es bei mir um eine frische TYPO3-Installation (leere DB) geht, habe
ich nicht das Wordpress-Tool zum Konvertieren verwendet.
Ich werde nach dem Release von TYPO3 4.3 ein kleines Tutorial schreiben das
diese Migration erkl?rt. Daneben sollen neue Sites ab 4.3 automatisch in
UTF-8 laufen, bei ?lteren Sites bieten wir daf?r die n?tige Unterst?tzung
zur Migration an...

Wenn du bis dahin warten kannst, dann spart dir das vielleicht ein wenig
Zeit und ?rger...

- michael
--
Use a newsreader! Check out
http://typo3.org/community/mailing-lists/use-a-news-reader/
Andreas Becker
2008-02-15 02:16:04 UTC
Permalink
Hi Michael

das ist ja super zu hoeren. Als ab 4.3 laeuft dann endlich alles auf UTF8
automatisch. Wann kommt 4.3 raus? Schon irgend ein Termin in Sicht?

Andi
Oliver Thiele
2008-03-04 22:11:17 UTC
Permalink
Hallo zusammen!
Bei Mittwald l?uft seit heute die TYPO3 Version 4.1.6 mit
voreingestelltem utf-8. Wer es mal testen will, es gibt kostenlose
Testaccounts.

Gr??e

Oliver
Josef Florian Glatz
2008-03-05 09:31:09 UTC
Permalink
Wird Typo3 ab 4.1.6 denn automatisch mit UTF-8 "ausgeliefert" ?

Gr??e
Jos

-----Ursprngliche Nachricht-----
Von: Oliver Thiele mail at oliver-thiele.de
Gesendet 04.03.2008 23:11:17
An: typo3-german at lists.netfielders.de
Betreff: Re: [TYPO3-german] TYPO3 und UTF-8 - brauche Hilfe

Hallo zusammen!Bei Mittwald luft seit heute die TYPO3 Version 4.1.6 mit voreingestelltem utf-8. Wer es mal testen will, es gibt kostenlose Testaccounts.GreOliver_______________________________________________TYPO3-german mailing listTYPO3-german at lists.netfielders.dehttp://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german
lists.netfielders.de
2008-03-05 09:36:58 UTC
Permalink
Hallo Herr Glatz,
Post by Josef Florian Glatz
Wird Typo3 ab 4.1.6 denn automatisch mit UTF-8 "ausgeliefert" ?
Normalerweise nicht, da aber ein Gro?teil unseres Supportaufkommens sich
um dieses Thema gedreht hat, weil Kunden ihre Installationen nicht
vern?nftig umgestellt hatten und dann doppelt nach utf-8 kodierte
Zeichen in der DB hatten, haben wir das bei uns schon jetzt umgestellt.

mfg
Oliver
Josef Florian Glatz
2008-03-05 09:48:03 UTC
Permalink
OK, dachte ich mir. Ab 4.2 sollte es dann aber std.m??ig sein, oder irre ich mich da?

lieGr?
jos


-----Ursprngliche Nachricht-----
Von: lists.netfielders.de ot at mittwald.de
Gesendet 05.03.2008 10:36:58
An: typo3-german at lists.netfielders.de
Betreff: Re: [TYPO3-german] TYPO3 und UTF-8 - brauche Hilfe

Hallo Herr Glatz, Wird Typo3 ab 4.1.6 denn automatisch mit UTF-8 "ausgeliefert" ?Normalerweise nicht, da aber ein Groteil unseres Supportaufkommens sich um dieses Thema gedreht hat, weil Kunden ihre Installationen nicht vernnftig umgestellt hatten und dann doppelt nach utf-8 kodierte Zeichen in der DB hatten, haben wir das bei uns schon jetzt umgestellt.mfgOliver_______________________________________________TYPO3-german mailing listTYPO3-german at lists.netfielders.dehttp://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german
Loading...