Seite 1 von 3

Umlaute werden "verschluckt"

Verfasst: 04.05.2009 07:40
von Astro-Van
Hi,

nachdem mein Hoster von MYSql4.1.1 auf MySql5.51 inkl. von Php4 auf Php5
umgestellt hat habe ich folgendes Problem :

Die Umlaute werden nicht mehr dargestellt, aber der Rest des Beitrages
bzw. der Überschrift werden dann aber auch nicht mehr dargestellt.

[ externes Bild ]

Ein nettes Forumsmitglied hat auch schon versucht zu helfen, hat leider nicht so funktioniert wie wir (er und ich) wollten.

DUK funktioniert auch nicht.

Sobald man mit Umlaut postet, kommt leere Seite, postet man ohne Umlaut alles ok.

Habe jetzt schon viele viele Beiträge hier gelesen, vieles ausprobiert, leider ohne den gewünschten Erfolg. :cry: :cry: :cry:

Aber ich habe die Hoffnung noch nicht aufgegeben.

Grüße Jens

Re: Umlaute werden "verschluckt"

Verfasst: 04.05.2009 20:50
von oxpus
Hallo,

da drängt sich mir die Frage auf, wie Dein Anbieter die Daten von dem alten auf den neuen Datenbankserver transferiert hat und dabei ggf. die Zeichensätze nicht berücksichtigte.
Schau doch mal nach, welche Zeichencodierung und Collation die Tabellen in der neuen Datenbank haben. Die müssten auf "utf8_bin" stehen und die Collation auf "utf8_general_ci".

Re: Umlaute werden "verschluckt"

Verfasst: 05.05.2009 07:44
von Astro-Van
Hi,

so ganz verstehen tue ich das aber auch nicht, da ich :

1. zum testen ein neues Forum installiert habe, Ergebnis siehe oben. Ich habe mit MySQLDumper die Tabelle phpbb_posts eingefügt.

2. Im original Forum sieht das ganze so aus :

[ externes Bild ]

Dort habe ich allerdings das Problem das beim erstellen eines neuen Themas oder Posten zu einem Beitrag mit einem Umlaut eine weiße Seite erhalte, erstelle ich ein neues Thema oder antworte auf einen Beitrag OHNE Umlaut ist alles normal.

Ich habe sämtliche Language/de PHP-Files die ich durch Mod´s verändert habe mit dem Notepad++ geöffnet und als UTF-8 ohne BOM abgespeichert. Ohne erfolg.

DUK, ohne Erfolg.

mysql_upgrader.php ausgeführt, ergebnis über die DB laufen lassen, ohne erfolg, bzw. FM : #1283 - Column \'post_text\' cannot be part of FULLTEXT index.


Daten zum Forum :

http://www.Astro-Van.de/phpBB3/portal.php Original Forum

http://www.Astro-Van.de/phpBB35/portal.php Kopie

EDIT :

http://www.astro-van.de/pics/phpBB_posts_kopie_1.jpg
http://www.astro-van.de/pics/phpBB_posts_kopie_2.jpg
http://www.astro-van.de/pics/phpBB_posts_ori_1.jpg
http://www.astro-van.de/pics/phpBB_posts_ori_2.jpg

Anhand der Datenmenge scheint MySQLDumper die Daten der Tabelle nach den Sonderzeichen/Umlauten nicht in die DB einzubauen.. :o :o

Grüße Jens

Re: Umlaute werden "verschluckt"

Verfasst: 05.05.2009 14:02
von oxpus
Das Feld "post_text" ist vom Typ "mediumtext"?
Im phpBB 3 wird doch hier "blob" verwendet. Nur da können doch die in UTF-8 konvertierte Sonderzeichen und Umlaute auch korrekt gespeichert werden...

Re: Umlaute werden "verschluckt"

Verfasst: 05.05.2009 14:15
von Astro-Van
Hi,

wenn ich von MEDIUMTEXT auf BLOB umzustellen versuche kommt eine FM :

#1283 - Column 'post_text' cannot be part of FULLTEXT index

oder muß man das anders anstellen ?

Grüße Jens

Re: Umlaute werden "verschluckt"

Verfasst: 05.05.2009 18:04
von oxpus
Nein, lass es mal so stehen. Die Datenbank ist ja modern genug, auch dort alles korrekt zu speichern.
Das hatte ich zunächst nicht gewusst.

Re: Umlaute werden "verschluckt"

Verfasst: 05.05.2009 20:07
von Astro-Van
Hi,

sorry aber ich verstehe Deine letzte Antwort nicht.

Die DB mag moden sein, aber sie hat schwierigkeiten beim speichern von Umlauten.

Grüße Jens

Re: Umlaute werden "verschluckt"

Verfasst: 05.05.2009 21:01
von oxpus
Mit "modern" meine ich, dass die Datenbank im Normalfall ins er Lage ist, die UTF-8 Zeichen komplett und fehlerfrei in einem "normalen"
Textfeld zu speichern.

Was ich ja eben nicht verstehen kann, ist bei Dir der Fehler als solches.

Wenn Du einen Beitrag bearbeitest und dabei Umlaute einfügst, sollte der Beitrag sauber gespeichert und dargestellt werden.
Tritt das dagegen nur bei übernommenen Beiträgen auf, dann ist das Backup bereits mit dem falschen Zeichensatz kodiert worden.
Die Inhalte müssten dann zwar u. U. in der Datenbank stehen, jedoch nicht immer korrekt angezeigt werden.

Ein Problem der Zeichensätze, das der MySQLDumper noch bis Version 1.22 hat, sofern man das Backup über die PERL-Funktion macht.
Wird über PHP-Methode gesichert, kann man den korrekten Zeichensatz für das Backup auswählen und das wäre für das phpBB 3
UTF-8. Wenn Du dieses Backup dann wieder herstellt, müsste zumindest jeder Umlaut auch korrekt dargestellt werden.
Und nicht vergessen: Die Zieldatenbank muss den Zeichensatz UTF-8 und utf8_unicode_ci als Collation haben.

Dazu:

Code: Alles auswählen

#1283 - Column \'post_text\' cannot be part of FULLTEXT index.
Stelle doch mal im Admin-Bereich die Suchfunktion auf "FULLTEXT native" ein, dann wäre dieser Fehler vorerst Geschichte.

Re: Umlaute werden "verschluckt"

Verfasst: 05.05.2009 21:18
von Astro-Van
Hi,

sobald im Beitrag oder Überschrift ein Umlaut ist nicht posten, kommt weiße Seite.

Ich kann aber auf alles Antworten oder neue Themen erstellen wo KEIN Umlaut drin ist.

Das verstehe ich ja auch nicht.

Grüße Jens

Re: Umlaute werden "verschluckt"

Verfasst: 05.05.2009 21:31
von oxpus
Öhm, Frage am Rande:
Was hast Du in der config.php in der Zeile

Code: Alles auswählen

$dbms = 'mysql';
Vielleicht ist dort die falsche Datenbank eingetragen. Da du ja auch jetzt mysql 5 hast.
Könnte vielleicht auch sein, dass "mysqli" hier besser funktioniert. Je nach dem, was Dein Anbieter alles eingerichtet hat...