Zum Inhalt springen

Multilanguage: iso-8859-1 (utf-8), HTML-Maskierung, MySql

Erstellt am 20. November 2006 · 7 Antworten · letzte Antwort am 26. Juli 2007

Tags: Datenbank, Frage

Unbekannter Benutzer ·

Hallo allen,
nach wie vor bin ich dabei zu lernen und das Gelernte insoweit umzusetzen, dass unser Konzept allmählich zu einem Typo3-Konzept wird.

Die sprachabhängige Steuerung der Seiten habe ich dank Eurer Tipps umsetzen können. Als ich die tr-Seiten eingab, fiel mir auf, dass die türkischen Sonderzeichen maskiert werden, nicht jedoch die Umlaute. Darauf hin prüfte ich den von Typo3 generierten HTML-Code: (meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1").
Ein meta-Tag in Form von (meta http-equiv="content-language" content="tr") ist auch nicht vorhanden.

Da ich auf einer vorinstallierten Umgebung aufgesetzt habe, prüfte ich noch zusätzlich folgende Umfeldvariablen:
Typo3
$TYPO3_CONF_VARS["BE"]["forceCharset"] = nicht gesetzt

MySQL
SHOW VARIABLES LIKE '%character_set%';
character_set_client: utf8
character_set_connection: utf8
character_set_database: latin1
character_set_results: utf8
character_set_server: latin1
character_set_system: utf8
character_sets_dir: /usr/share/mysql/charsets/

SHOW VARIABLES LIKE '%collation_%';
collation_connection utf8_general_ci
collation_database latin1_swedish_ci
collation_server latin1_swedish_ci

Interessehalber schaute ich mir auch eine Typo3-Tabelle an:
desc pages;
Feld Typ Kollation
uid int(11)
title tinytext latin1_swedish_ci

Die Tabellen für unsere Rezepte werden in UTF-8 generiert. Auf die Daten werde ich - so mein derzeitiger Stand - per php zugreifen.

Ich könnte mir vorstellen, dass dieses Konstrukt der Mehrsprachigkeit im Zusammenspiel mit Typo3, php, MySql und HTML zu Problemen führen könnte.

Wäre es da nicht sinnvoll, alles auf UTF-8 basieren zu lassen?

Wenn ja, was müsste ich in Typo3 einstellen? Habe mal geschaut und in meiner localconf.php gibt es keinen Eintrag für $TYPO3_CONF_VARS["BE"]["forceCharset"]. Wo genau müsste die Änderung erfolgen?

😢 Ich glaube, dass gesamte liest sich etwas chaotisch, aber so fühle ich mich derzeit.

Gruss Mensch

steffenk ·

moin,

türkisch hat ein Grundproblem - das i wird als Grossbuchstabe auch zu einem I mit Punkt drüber, daher tauchen da einige Probleme auf.

Ich kann nur empfehlen, alles auf utf8 umzusetzen, das birgt die wenigsten Probleme. eine korrekte Spracheinstellung für türkisch ist dann

config.locale_all = tr_TR.UTF8
Unbekannter Benutzer ·

Danke!
Heisst dies, dass ich mein Template um folgenden Code erweitere:

# Parameter S für Sprachübergabe
config.linkVars = S 

# Standardsprache 0 = deutsch
config.sys_language_uid = 0 
config.language = de
config.locale_all = de_DE

# Zweite Sprache 5 = türkisch
[globalVar = GP:S = 5] 
  config.sys_language_uid = 5
  config.language = tr
  config.locale_all = tr_TR.UTF8
[global]

und sonst keine Änderungen notwendig sind?

Was passiert mit den maskierten Seitentitel? Diese sind ja von diesem Statement nicht betroffen?
Gruss Mensch

steffenk · · Beste Antwort

korrekt.
Warum nimmst Du S ? der normale Name ist L - dann passt es auch mit realurl-Konfigurationen etc.

Was meinst Du mit maskierten Seitentiteln ?

Unbekannter Benutzer ·

Hallo,
realUrl hatte ich auf meine "noch zu Lernen"-Liste aufgenommen. OK, ändere S in L um.
Wie kann ich für das Typo3-System die Spracheinstellung ändern, so dass Titel nicht mehr maskiert werden - aus S mit Häkchen unten wird & # 350 ;?
Gruss Mensch

steffenk ·

ach das meinst Du. Das nennt man nicht Maskieren (damit ist z.B. sowas gemeint: \") sondern "Umwandlung in Unicode"

Du musst Typo3 auf utf-8 umstellen, dazu im Installtool unter "All Configuration" unter BE[forceCharset] utf-8 eingeben.

hatte ich Dir nicht einen Link gegeben? Da steht das auch.

traser1 ·

hi steffenk,

steffenk schrieb

hatte ich Dir nicht einen Link gegeben? Da steht das auch.

auf deiner seite hast du in dem TS diese angabe stehen.

config.locale_all = de_DE.UTF8

meine frage ist, was bewirkt das .UTF8 hinter dem de_DE?