Umlaute werden nach Konvertierung nicht übernommen

phpBB 3.0 hat sein "End of Life" erreicht. Eine Neu-Installation wird nicht mehr unterstützt.
Webdevil71
Mitglied
Beiträge: 14
Registriert: 17.02.2008 14:36

Umlaute werden nach Konvertierung nicht übernommen

Beitrag von Webdevil71 »

Hallo,

ich habe bereits einige Beiträge zum Thema Umlaute gelesen.
Leider konnten diese mir nicht weiterhelfen.
Es geht darum, ein PHP-Fusion Forum auf ein phpBB3 zu konvertieren.
Hierzu gibt es einen Konverter von Fusion nach phpBB2.
Diese Konvertierung funktioniert einwandfrei.
Alle Umlaute werden im phpBB2 richtig dargestellt.
Konvertiere ich nun auf phpBB3 werden die Umlaute nicht übernommen.

Beim ersten Versuch hatte ich die Tabellen vom phpbb2 auf Kollation UTF8_general_ci stehen, später auch mit UTF8_bin versucht, da phpBB3 diese ebenfalls in UTF8_bin anlegt.
Benutzeravatar
Balint
Mitglied
Beiträge: 1815
Registriert: 25.01.2003 21:43
Wohnort: Stuttgart
Kontaktdaten:

Beitrag von Balint »

Hallo!

Die Collation hat für die Konvertierung keinerlei Einfluß.

Versuch mal in der lang_main.php die Option

Code: Alles auswählen

$lang['ENCODING'] = 'iso-8859-1';
auf

Code: Alles auswählen

$lang['ENCODING'] = 'utf-8'; 
umzustellen und erneut zu konvertieren.


Viele Grüße,
Bálint
Meine MODs für phpBB 2.x und phpBB 3.x!
Webdevil71
Mitglied
Beiträge: 14
Registriert: 17.02.2008 14:36

Beitrag von Webdevil71 »

Vielen Dank für die Antwort.
Hab die Datei nicht gefunden, sodaß ich es nicht ausprobieren konnte.
Ein anderer Weg brachte dann auch den gewünschten Erfolg.
Sehr prakmatisch aber funktioniert :)
UPDATE phpbb_posts SET post_text = REPLACE(post_text, 'ß', 'ß') WHERE post_text LIKE '%ß%';
UPDATE phpbb_posts SET post_text = REPLACE(post_text, '´', '') WHERE post_text LIKE '%´%';
UPDATE phpbb_posts SET post_text = REPLACE(post_text, 'ä', 'ä') WHERE post_text LIKE '%ä%';
UPDATE phpbb_posts SET post_text = REPLACE(post_text, 'ö', 'ö') WHERE post_text LIKE '%ö%';
UPDATE phpbb_posts SET post_text = REPLACE(post_text, 'ü', 'ü') WHERE post_text LIKE '%ü%';
UPDATE phpbb_posts SET post_text = REPLACE(post_text, 'Ä', 'Ä') WHERE post_text LIKE '%Ä%';

UPDATE phpbb_posts SET post_subject = REPLACE(post_subject, 'ß', 'ß') WHERE post_subject LIKE '%ß%';
UPDATE phpbb_posts SET post_subject = REPLACE(post_subject, '´', '') WHERE post_subject LIKE '%´%';
UPDATE phpbb_posts SET post_subject = REPLACE(post_subject, 'ä', 'ä') WHERE post_subject LIKE '%ä%';
UPDATE phpbb_posts SET post_subject = REPLACE(post_subject, 'ö', 'ö') WHERE post_subject LIKE '%ö%';
UPDATE phpbb_posts SET post_subject = REPLACE(post_subject, 'ü', 'ü') WHERE post_subject LIKE '%ü%';
UPDATE phpbb_posts SET post_subject = REPLACE(post_subject, 'Ä', 'Ä') WHERE post_subject LIKE '%Ä%';

UPDATE phpbb_users SET user_sig = REPLACE(user_sig, 'ß', 'ß') WHERE user_sig LIKE '%ß%';
UPDATE phpbb_users SET user_sig = REPLACE(user_sig, '´', '') WHERE user_sig LIKE '%´%';
UPDATE phpbb_users SET user_sig = REPLACE(user_sig, 'ä', 'ä') WHERE user_sig LIKE '%ä%';
UPDATE phpbb_users SET user_sig = REPLACE(user_sig, 'ö', 'ö') WHERE user_sig LIKE '%ö%';
UPDATE phpbb_users SET user_sig = REPLACE(user_sig, 'ü', 'ü') WHERE user_sig LIKE '%ü%';
UPDATE phpbb_users SET user_sig = REPLACE(user_sig, 'Ä', 'Ä') WHERE user_sig LIKE '%Ä%';

UPDATE phpbb_topics SET topic_title = REPLACE(topic_title, 'ß', 'ß') WHERE topic_title LIKE '%ß%';
UPDATE phpbb_topics SET topic_title = REPLACE(topic_title, '´', '') WHERE topic_title LIKE '%´%';
UPDATE phpbb_topics SET topic_title = REPLACE(topic_title, 'ä', 'ä') WHERE topic_title LIKE '%ä%';
UPDATE phpbb_topics SET topic_title = REPLACE(topic_title, 'ö', 'ö') WHERE topic_title LIKE '%ö%';
UPDATE phpbb_topics SET topic_title = REPLACE(topic_title, 'ü', 'ü') WHERE topic_title LIKE '%ü%';
UPDATE phpbb_topics SET topic_title = REPLACE(topic_title, 'Ä', 'Ä') WHERE topic_title LIKE '%Ä%';
Große "Ü" und "Ö" hab ich so auf die Schnelle nicht gefunden. Kann man ja nach Bedarf erweitern.

Grüße
Webdevil
Düssi
Mitglied
Beiträge: 374
Registriert: 05.08.2006 16:46
Wohnort: in NRW

Beitrag von Düssi »

Um das Thema nochmal aufzugreifen:

Da ich auch gerade auf meinem Testserver mein Forum von 2 auf 3 konvertiert habe und vom Problem der Umlaute betroffen bin, war mir dieser Thread hilfreich.

Den SQL Befehl von webdevil71 brachte leider keine Änderung.


Die Hilfe von Balint, die Datei von iso auf utf umzustellen und einfach nochmal die Datenbank drüber zu konvertieren hat Erfolg gebracht !

Vielen Dank
Benutzeravatar
Nico_Schubert
Mitglied
Beiträge: 11
Registriert: 27.02.2008 02:29
Kontaktdaten:

Beitrag von Nico_Schubert »

Webdevil71 hat geschrieben:Vielen Dank für die Antwort.
Hab die Datei nicht gefunden, sodaß ich es nicht ausprobieren konnte.
Ein anderer Weg brachte dann auch den gewünschten Erfolg.
Sehr prakmatisch aber funktioniert :)
UPDATE phpbb_posts SET post_text = REPLACE(post_text, 'ß', 'ß') WHERE post_text LIKE '%ß%';
UPDATE phpbb_posts SET post_text = REPLACE(post_text, '´', '') WHERE post_text LIKE '%´%';
UPDATE phpbb_posts SET post_text = REPLACE(post_text, 'ä', 'ä') WHERE post_text LIKE '%ä%';
UPDATE phpbb_posts SET post_text = REPLACE(post_text, 'ö', 'ö') WHERE post_text LIKE '%ö%';
UPDATE phpbb_posts SET post_text = REPLACE(post_text, 'ü', 'ü') WHERE post_text LIKE '%ü%';
UPDATE phpbb_posts SET post_text = REPLACE(post_text, 'Ä', 'Ä') WHERE post_text LIKE '%Ä%';

UPDATE phpbb_posts SET post_subject = REPLACE(post_subject, 'ß', 'ß') WHERE post_subject LIKE '%ß%';
UPDATE phpbb_posts SET post_subject = REPLACE(post_subject, '´', '') WHERE post_subject LIKE '%´%';
UPDATE phpbb_posts SET post_subject = REPLACE(post_subject, 'ä', 'ä') WHERE post_subject LIKE '%ä%';
UPDATE phpbb_posts SET post_subject = REPLACE(post_subject, 'ö', 'ö') WHERE post_subject LIKE '%ö%';
UPDATE phpbb_posts SET post_subject = REPLACE(post_subject, 'ü', 'ü') WHERE post_subject LIKE '%ü%';
UPDATE phpbb_posts SET post_subject = REPLACE(post_subject, 'Ä', 'Ä') WHERE post_subject LIKE '%Ä%';

UPDATE phpbb_users SET user_sig = REPLACE(user_sig, 'ß', 'ß') WHERE user_sig LIKE '%ß%';
UPDATE phpbb_users SET user_sig = REPLACE(user_sig, '´', '') WHERE user_sig LIKE '%´%';
UPDATE phpbb_users SET user_sig = REPLACE(user_sig, 'ä', 'ä') WHERE user_sig LIKE '%ä%';
UPDATE phpbb_users SET user_sig = REPLACE(user_sig, 'ö', 'ö') WHERE user_sig LIKE '%ö%';
UPDATE phpbb_users SET user_sig = REPLACE(user_sig, 'ü', 'ü') WHERE user_sig LIKE '%ü%';
UPDATE phpbb_users SET user_sig = REPLACE(user_sig, 'Ä', 'Ä') WHERE user_sig LIKE '%Ä%';

UPDATE phpbb_topics SET topic_title = REPLACE(topic_title, 'ß', 'ß') WHERE topic_title LIKE '%ß%';
UPDATE phpbb_topics SET topic_title = REPLACE(topic_title, '´', '') WHERE topic_title LIKE '%´%';
UPDATE phpbb_topics SET topic_title = REPLACE(topic_title, 'ä', 'ä') WHERE topic_title LIKE '%ä%';
UPDATE phpbb_topics SET topic_title = REPLACE(topic_title, 'ö', 'ö') WHERE topic_title LIKE '%ö%';
UPDATE phpbb_topics SET topic_title = REPLACE(topic_title, 'ü', 'ü') WHERE topic_title LIKE '%ü%';
UPDATE phpbb_topics SET topic_title = REPLACE(topic_title, 'Ä', 'Ä') WHERE topic_title LIKE '%Ä%';
Große "Ü" und "Ö" hab ich so auf die Schnelle nicht gefunden. Kann man ja nach Bedarf erweitern.

Grüße
Webdevil
Danke für den Sql Befehl, dieser hat mir sehr geholfen und ein wenig Schreibarbeit erleichtert.

Grüße Nico
LaFeBeSi
Mitglied
Beiträge: 58
Registriert: 28.08.2008 23:01
Kontaktdaten:

Beitrag von LaFeBeSi »

Ich hab auch zuerst mal die SQL Befehle ausprobiert, die haben jedoch nichts gebracht. Die Änderung von Balint war dann der Schlüssel zum Erfolg, vielen Dank! :wink:
Ghostt
Mitglied
Beiträge: 212
Registriert: 12.03.2008 14:53

Beitrag von Ghostt »

das problem mit den umlauten und Sonderzeichen lässt sich am saubersten und einfach lösen, mit mysqldumper.de!

bigdump hat da versagt!!


ich habe es selbst getestet und es brachte den gewünschten erfolg.
Benutzeravatar
Mahony
Ehemaliges Teammitglied
Beiträge: 12178
Registriert: 17.11.2005 22:33
Wohnort: Ostfildern Kemnat
Kontaktdaten:

Beitrag von Mahony »

Hallo Ghostt
Dir ist aber schon klar dass es hier um die Konvertierung von phpBB 2.x zu phpBB 3.x geht und das Problem mit den Umlauten während der Konvertierung aufgetreten ist?

Die Lösung von Balint ist hier die einzig richtige.
mysqldumper.de hat geschrieben:Wenn das Programm, welches sich mit dem MySQL-Server verbindet, dem Server nicht mittteilt welcher Zeichensatz verwendet werden soll, dann greift die Standardeinstellung des MySQL-Servers (die Daten werden dann in der Kodierung geliefert, die in der MySQL-Systemvariablen character_set_connection voreingestellt ist).
Und genau hier knallt es in der Praxis wenn die Daten in einer anderen Kodierung geliefert werden, als das Programm erwartet.
Das gilt für beide Richtungen.
Quelle: mysqldumper.de - Die Umlautproblematik



Grüße: Mahony
Taekwondo in Berlin
Wer fragt, ist ein Narr für fünf Minuten, wer nicht fragt, ist ein Narr für immer.
wobo
Mitglied
Beiträge: 105
Registriert: 04.09.2003 09:09

Beitrag von wobo »

Mahony hat geschrieben:Die Lösung von Balint ist hier die einzig richtige.
Gerne, aber wo soll denn die Datei lang_main.php sein?

Ich habe ein punBB-Forum in utf-8 in phpBB 2.0.23 konvertiert. Vor dem Konvertierungslauf habe ich den Wert in lang_main.php der phpBB 2 auf utf-8 gestellt. Die Konvertierung lief korrekt, alle Umlaute werden in phpBB 2.0.23 korrekt dargestellt.

In punBB 3.0.2 gibt es die Datei lang_main.php nicht. Nach der Konvertierung von phpBB 2 auf phpBB 3 sind alle Umlaute zerschossen.
Der Charset der Webseite des Forums wird aber korrekt dargestellt, wie man an den Forenmeldungen ("Neue Beiträge") sehen kann. Nur die importierten Texte und Überschriften werden falsch dargestellt.

Neu eingegebene Texte werden korrekt dargestellt.

Ich habe alles abgesucht, ich finde keine Erklärung.

wobo
jopa
Mitglied
Beiträge: 41
Registriert: 23.09.2007 15:57

Beitrag von jopa »

ich hab' zwar von der Sache an sich keine Ahnung, aber vielleicht ist ja die Datei bei phpBB2 gemeint.

Also vor der Konvertierung diese Datei ändern und dann kommt vielleicht das Richtige raus?!?

(bevor ihr anfangt auszuprobieren, immer Backups, ...)
Gesperrt

Zurück zu „[3.0.x] Installation, Update und Konvertierung“