Antwort
 
LinkBack Themen-Optionen Thema bewerten Ansicht
  #1  
Alt 20.06.06, 10:36
Forum Aktivist
 
Registriert seit: 14.06.06
Alter: 27
Beiträge: 92

Bug? Probleme mit Umlauten im Text --> Grund Datenbankanbindung!


Hallo zusammen!

Folgendes Problem: Wenn ich im Backend einen Text eingebe (egal ob Überschrift, Textkörper, PHP-Script - einfach überall dort, wo die Eingabe in der Datenbank abgelegt wird) der Umlaute beinhaltet, dann bekomme ich folgende Fehlermeldung:

102: These fields are not properly updated in database: (bodytext) Probably value mismatch with fieldtype.

Die Daten werden dann nur bis zum ersten Umlaut in die Datenbank (MySQL - 4.1.20) gespeichert...

Ein ähnliches bzw. das selbe Problem hatte ich, wenn ich per PHP-Skript Daten aus einem Formular in die Datenbank eintrage. Umlaute und alles nach dem ersten Umlaut wurden nicht gespeichert. Daraufhin habe ich recherchiert und mir wurde eine Lösung aufgezeigt, die das Problem behoben hat.

Und zwar wurde die Kollation der Datenbank auf "latin1_general_ci" umgestellt und gleichzeitig direkt nach dem Verbindungsaufbau der Datenbank folgende query abgeschickt:
PHP-Code:
mysql_query("SET NAMES latin1"); 
Mittels dieser query in Verbindung mit der Umstellung der Kollation ist das Problem nun beseitigt und Umlaute werden in der Datenbank abgespeichert.

Folgendes müsste also auch bei Typo3 funktionieren...

Für mich stellt sich nun die Frage, ob das ein Bug von Typo3 ist...und falls ja, wie ich den beheben kann? Klar, ich kann anstatt 'ü' auch 'ü' schreiben, aber das ist ja sicher nicht Sinn der Sache...

Wollte mal Eure Meinungen dazu hören. Denkt Ihr, es ist ein Bug und ich muss nen Bugreport verfassen? Und wenn ja, wo poste ich den bzw. schicke ich den hin?

Gruß,
Drathy
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #2  
Alt 27.06.06, 13:10
Forum Aktivist
 
Registriert seit: 14.06.06
Alter: 27
Beiträge: 92

Hat denn sonst keine das Problem, dass Typo3 keine Umlaute in die DB speichern kann??
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #3  
Alt 27.06.06, 18:00
Benutzerbild von maxhb
TYPO3 Forum Team
Moderator
 
Registriert seit: 19.08.04
Ort: Bremen
Alter: 36
Beiträge: 1.535

Zitat:
Zitat von drathy
Hat denn sonst keine das Problem, dass Typo3 keine Umlaute in die DB speichern kann??
Also das Problem habe ich noch nicht kennengelert...

Gib doch mal über den PHP-MyAdmin folgendes ein:
Code:
SHOW VARIABLES LIKE '%collation%'
Bie mir ergibt das folgende Infos:
Code:
collation_connection     utf8_unicode_ci
collation_database     latin1_german1_ci
collation_server     latin1_german1_ci
Evtl. ergeben sich bei Dir ja abweichende Werte...

CU
maxhb
__________________
FreeBSD || MySQL 5.x || TYPO3 3.6 - 4.2

Meine Stadt, meine Firma, mein Redaktionssystem.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #4  
Alt 28.06.06, 08:28
Forum Aktivist
 
Registriert seit: 14.06.06
Alter: 27
Beiträge: 92

Hallo!

In der Tat sind da bei mir andere Werte, nämlich
Code:
collation_connection  	latin1_general_ci
collation_database 	utf8_general_ci
collation_server 	utf8_general_ci
Allerdings habe ich auch in PHPMyAdmin den Wert für " Zeichensatz / Kollation der MySQL-Verbindung:" auf latin1_general_ci umgestellt, da mir das bei meinem Problem mit den Umlauten helfen sollte....

Kannst Du mir sagen, wo ich die Server- und DB-Collation ändern kann? Oder kann das nur mein Provider?

Könnte das überhaupt ein Grund für mein Problem sein?

Gruß,
Drathy
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #5  
Alt 28.06.06, 13:12
Benutzerbild von maxhb
TYPO3 Forum Team
Moderator
 
Registriert seit: 19.08.04
Ort: Bremen
Alter: 36
Beiträge: 1.535

Hi!
Code:
collation_connection      latin1_general_ci
Diesen Wert kannst Du auf der Startseite Deines phpMyAdmin einstellen, die Select-Box heißt "Zeichensatz / Kollation der MySQL-Verbindung"

Code:
collation_database     utf8_general_ci
collation_server     utf8_general_ci
Um diese Werte anzupassen im phpMyAdmin Deine Typo3-DB auswählen, dort auf den Reiter "Operationen" und dann das Feld "Kollation" entsprechend einstellen.

Zitat:
Zitat von drathy
Könnte das überhaupt ein Grund für mein Problem sein?
Ich glaube schon, dass dies die ursache für Dein Problem ist. Die gute Nachricht lautet aber, dass Du das "mal eben schnell" ausprobieren kannst und wenn es fehlschlägt einfach Dein Backup, das Du natürlich selbstmurmelnd erstellt hast, wieder einspielen kannst. Vermutlich hilft es schon die Änderungen einfach nur rückgängig zu machen.

Cu
maxhb
__________________
FreeBSD || MySQL 5.x || TYPO3 3.6 - 4.2

Meine Stadt, meine Firma, mein Redaktionssystem.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #6  
Alt 28.06.06, 14:39
Forum Aktivist
 
Registriert seit: 14.06.06
Alter: 27
Beiträge: 92

Danke für die Hilfestellung.

Bevor ich daran aber rumfummle (auch wenn normal nix kaputt gehen sollte) würde ich doch ganz gerne meine Datenbank sichern, da ich sonst bei Datenverlust mich vermutlich einweisen lassen könnte und meine Diplomarbeit den Bach runter gehen würde... ;-)

Beinhaltet phpmyadmin eine zuverlässige Backup-Funktion? Oder sollte ich bspw. MySQLDumper installieren?
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #7  
Alt 28.06.06, 21:16
Benutzerbild von maxhb
TYPO3 Forum Team
Moderator
 
Registriert seit: 19.08.04
Ort: Bremen
Alter: 36
Beiträge: 1.535

Zitat:
Zitat von drathy
Beinhaltet phpmyadmin eine zuverlässige Backup-Funktion? Oder sollte ich bspw. MySQLDumper installieren?
Ein Backup kannst Du bequem über den phpMyAdmin machen. Nur nicht vergessen, Daten und DATENBANKSTRUKTUR zu sichern.

Gruß
maxhb
__________________
FreeBSD || MySQL 5.x || TYPO3 3.6 - 4.2

Meine Stadt, meine Firma, mein Redaktionssystem.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #8  
Alt 31.07.06, 13:38
Forum Aktivist
 
Registriert seit: 14.06.06
Alter: 27
Beiträge: 92

Ist nun zwar schon ein bissl her mit dem Thema, aber ich bin erst jetzt dazu gekommen, mich um dieses "kleine" Problem noch einmal zu kümmern...

Meine Einstellung siehr nun wie folgt aus:
collation_connection utf8_unicode_ci
collation_database latin1_german1_ci
collation_server utf8_general_ci

Leider bekomme ich es nicht hin, den Server auf latin1 zu setzen. Unter Operationen ist auch nur eine Einstellungsmöglichkeit zu finden, und zwar die für die database... Kann es sein, dass diese Funktion durch meinen Provider deaktiviert wurde? Oder muss ich die Einstellung doch woanders vornehmen?

Denn allein durch die Änderung des Zeichensatzes für die Datenbank hat sich das Problem leider nicht erledigt...

Gruß,
Drathy
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #9  
Alt 01.08.06, 13:44
Forum Aktivist
 
Registriert seit: 14.06.06
Alter: 27
Beiträge: 92

Problem gelöst:

Grund für das Problem ist nach Absprache mit dem Serverprovider allem Anschein nach ein kleiner Bug der Auftritt, wenn man die allerneueste MySQL-Version 4.x verwendet. Denn seit dieser Version ist ein "SET NAMES" bei der Verbindungsherstellung zur DB anscheind Pflicht.

Um das Problem zu beheben habe ich nun Folgendes gemacht:
Die Datei "t3lib/class.t3lib_db.php" geöffnet und die Funktion pconnect() wie folg geändert:
Code:
	function sql_pconnect($TYPO3_db_host, $TYPO3_db_username, $TYPO3_db_password)	{
		if ($GLOBALS['TYPO3_CONF_VARS']['SYS']['no_pconnect'])	{
			$this->link = @mysql_connect($TYPO3_db_host, $TYPO3_db_username, $TYPO3_db_password);
		} else {
			$this->link = @mysql_pconnect($TYPO3_db_host, $TYPO3_db_username, $TYPO3_db_password);
		}

		if (!$this->link) {
			t3lib_div::sysLog('Could not connect to Mysql server '.$TYPO3_db_host.' with user '.$TYPO3_db_username.'.','Core',4);
		} else {
            //##### Eingefuegt, um Problem mit Umlauten beim Abspeichern in DB zu verhindern #####
                   $zeichensatz = "SET NAMES latin1";
                   mysql_query($zeichensatz, $this->link);
            //##### Ende #####
			$setDBinit = t3lib_div::trimExplode(chr(10), $GLOBALS['TYPO3_CONF_VARS']['SYS']['setDBinit']);
			foreach ($setDBinit as $v)	{
				if (mysql_query($v, $this->link) === FALSE)	{
					t3lib_div::sysLog('Could not initialize DB connection with query "'.$v.'".','Core',3);
				}
			}
		}
		return $this->link;
	}
Ich hab die eingefügten Zeilen mal makiert.

Nachdem ich das nun gemacht habe, kann ich ohne Probleme Umlaute in Typo3 verwenden und diese werden problemlos in die DB gespeichert...

Gruß,
Drathy
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #10  
Alt 01.08.06, 14:23
Forum Aktivist
 
Registriert seit: 14.06.06
Alter: 27
Beiträge: 92

Ein letztes Mal:

Wer nicht im Quellcode rumpfuschen will, kann einfach in der localconf.php folgende Zeile hinzufügen:
PHP-Code:
$TYPO3_CONF_VARS['SYS']['setDBinit'] = 'SET NAMES latin1;'
Damit scheint es auch problemlos zu klappen!

(Gefunden hier:http://bugs.typo3.org/view.php?id=3547)

Gruß,
Drathy
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
sr_feuser_register: Probleme mit Umlauten im Benutzernamen mavo TYPO3 4.x FE-User 3 07.03.08 16:06
Probleme mit GIF-Builder und Umlauten sacu TYPO3 4.x Fragen und Probleme 0 23.02.07 19:52
MS-SQL Datenbankanbindung dotbizz TYPO3 4.x Fragen und Probleme 2 29.01.07 16:51
Einfügen von Word-Texten, Probleme mit Umlauten markus TYPO3 4.x Fragen und Probleme 1 17.09.06 17:40
Grund Installation ProjektOliver TYPO3 3.x Fragen und Probleme 9 29.05.06 05:48


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:34 Uhr.


Powered by vBulletin® Version 3.7.3 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0