[3.3] weitere Warnungen nach Provider Umzug

Fragen rund um die Installation, Administration und Benutzung von phpBB.
Forumsregeln
Bitte im Thementitel den Präfix deiner phpBB-Version angeben
Benutzeravatar
LukeWCS
Supporter
Supporter
Beiträge: 3035
Registriert: 15.12.2014 10:19
Kontaktdaten:

Re: [3.3] weitere Warnungen nach Provider Umzug

Beitrag von LukeWCS »

Habe den Dump untersucht und das hat meine Vermutung bestätigt: entweder beim Backup oder beim Restore gab es ein Problem und zwar bei der Kodierung.

Beispiel das Wort "Dämm-Matte", das hätte im Dump (UTF8) auch exakt so angezeigt werden müssen, wenn man den z.B. in Notepad++ öffnet.

Tatsächlich wird es im Dump bei UTF8 Kodierung aber als

Code: Alles auswählen

Dämm-Matte
angezeigt und in ANSI wird es so dargestellt:

Code: Alles auswählen

Dämm-Matte
Für das "ä" werden also 4 Bytes verwendet, was aber normal nur 2 Bytes sein sollten. Und darin liegt das Problem und bringt unserialize() offensichtlich aus dem Konzept, weil die Daten in einem ungültigen Format vorliegen.

Das wäre jetzt also mal die sekundäre Ursache, warum die Meldungen in phpBB auftreten: weil die Daten bereits in der DB fehlerhaft vorhanden sind. Und die primäre Ursache ist beim Backup/Restore zu suchen, da muss das Problem entstanden sein.

Eine simple Lösung habe ich dafür nicht.
Möge das Backup mit dir sein. Immer.
Kein Support via PN! Siehe den Punkt "Private Nachrichten" im phpBB.de-Knigge.
Erweiterungen - Infos zur artgerechten Haltung / phpBB Ext Check - Analyse von Erweiterungen bezüglich Vorgaben und Kompatibilität
hausmann
Mitglied
Beiträge: 115
Registriert: 02.03.2004 20:05
Wohnort: Willich
Kontaktdaten:

Re: [3.3] weitere Warnungen nach Provider Umzug

Beitrag von hausmann »

LukeWCS hat geschrieben: 19.06.2025 22:32 Eine simple Lösung habe ich dafür nicht.
Schade, aber ganz lieben Dank für Deine Hilfe.
Gruss Wilfried
cpg
Mitglied
Beiträge: 542
Registriert: 24.11.2007 12:43
Kontaktdaten:

Re: [3.3] weitere Warnungen nach Provider Umzug

Beitrag von cpg »

Moin,

es können in der Datenbank die Zeichen geändert werden nach diesem Muster:

Code: Alles auswählen

UPDATE phpbb3_posts SET post_text = REPLACE(post_text, 'ä', 'ä') WHERE post_text LIKE '%ä%';
Beispiel für post_text und den Buchstaben "ä".

Das ist aber ein mühevolles Unterfangen und es müsste ja für alle Fälle durchgeführt werden, wo Fehler sind.

Gruß
cpg
hausmann
Mitglied
Beiträge: 115
Registriert: 02.03.2004 20:05
Wohnort: Willich
Kontaktdaten:

Re: [3.3] weitere Warnungen nach Provider Umzug

Beitrag von hausmann »

Nachfolgender Code habe ich schon drüber laufen lassen:

Code: Alles auswählen

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_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_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_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_from = REPLACE(user_from, 'ß', 'ß') WHERE user_from LIKE '%ß%';
UPDATE phpbb_users SET user_from = REPLACE(user_from, '´', "'") WHERE user_from LIKE '%´%';
UPDATE phpbb_users SET user_from = REPLACE(user_from, 'ä', 'ä') WHERE user_from LIKE '%ä%';
UPDATE phpbb_users SET user_from = REPLACE(user_from, 'ö', 'ö') WHERE user_from LIKE '%ö%';
UPDATE phpbb_users SET user_from = REPLACE(user_from, 'ü', 'ü') WHERE user_from LIKE '%ü%';
UPDATE phpbb_users SET user_from = REPLACE(user_from, 'Ä', 'Ä') WHERE user_from LIKE '%Ä%';
UPDATE phpbb_users SET user_from = REPLACE(user_from, 'Ö', 'Ö') WHERE user_from LIKE '%Ö%';
UPDATE phpbb_users SET user_from = REPLACE(user_from, 'Ü', 'Ü') WHERE user_from LIKE '%Ü%';

UPDATE phpbb_users SET user_occ = REPLACE(user_occ, 'ß', 'ß') WHERE user_occ LIKE '%ß%';
UPDATE phpbb_users SET user_occ = REPLACE(user_occ, '´', "'") WHERE user_occ LIKE '%´%';
UPDATE phpbb_users SET user_occ = REPLACE(user_occ, 'ä', 'ä') WHERE user_occ LIKE '%ä%';
UPDATE phpbb_users SET user_occ = REPLACE(user_occ, 'ö', 'ö') WHERE user_occ LIKE '%ö%';
UPDATE phpbb_users SET user_occ = REPLACE(user_occ, 'ü', 'ü') WHERE user_occ LIKE '%ü%';
UPDATE phpbb_users SET user_occ = REPLACE(user_occ, 'Ä', 'Ä') WHERE user_occ LIKE '%Ä%';
UPDATE phpbb_users SET user_occ = REPLACE(user_occ, 'Ö', 'Ö') WHERE user_occ LIKE '%Ö%';
UPDATE phpbb_users SET user_occ = REPLACE(user_occ, 'Ü', 'Ü') WHERE user_occ LIKE '%Ü%';

UPDATE phpbb_users SET user_interests = REPLACE(user_interests, 'ß', 'ß') WHERE user_interests LIKE '%ß%';
UPDATE phpbb_users SET user_interests = REPLACE(user_interests, '´', "'") WHERE user_interests LIKE '%´%';
UPDATE phpbb_users SET user_interests = REPLACE(user_interests, 'ä', 'ä') WHERE user_interests LIKE '%ä%';
UPDATE phpbb_users SET user_interests = REPLACE(user_interests, 'ö', 'ö') WHERE user_interests LIKE '%ö%';
UPDATE phpbb_users SET user_interests = REPLACE(user_interests, 'ü', 'ü') WHERE user_interests LIKE '%ü%';
UPDATE phpbb_users SET user_interests = REPLACE(user_interests, 'Ä', 'Ä') WHERE user_interests LIKE '%Ä%';
UPDATE phpbb_users SET user_interests = REPLACE(user_interests, 'Ö', 'Ö') WHERE user_interests LIKE '%Ö%';
UPDATE phpbb_users SET user_interests = REPLACE(user_interests, 'Ü', 'Ü') WHERE user_interests 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 '%Ä%';
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 '%Ü%';

Gruss Wilfried
Fred
Mitglied
Beiträge: 76
Registriert: 25.01.2011 11:33
Wohnort: Lippstadt
Kontaktdaten:

Re: [3.3] weitere Warnungen nach Provider Umzug

Beitrag von Fred »

Guten Tag an das Support Team,
Info Wilfried und ich arbeiten zusammen am Forum

Es gibt eine weitere Meldung die bei einem Mitglied ( von 1000 ) auftritt und die
wir uns nicht erklären können. Der User kam eine Woche ohne Probleme ins Forum und bekommt nun diese Meldung

[phpBB Debug]PHP Warning: in file [ROOT]phpbb/notification/type/base.php on line 121: unserialize(): Error at offset 186 of 213 bytes

Obwohl "nur" eine Warnung kommt der User nicht mehr ins Forum.
Evt hat jemand eine Idee.

Gruß Fred
cpg
Mitglied
Beiträge: 542
Registriert: 24.11.2007 12:43
Kontaktdaten:

Re: [3.3] weitere Warnungen nach Provider Umzug

Beitrag von cpg »

Moin,

hat der User Sonderzeichen im Namen?
oder im Profil?

Gruß
cpg
Fred
Mitglied
Beiträge: 76
Registriert: 25.01.2011 11:33
Wohnort: Lippstadt
Kontaktdaten:

Re: [3.3] weitere Warnungen nach Provider Umzug

Beitrag von Fred »

Nein weder noch, und was sehr seltsam ist dass er eine Woche problemlos ins Forum kam
und ohne eine Änderung jetzt die Meldung bekommt...
cpg
Mitglied
Beiträge: 542
Registriert: 24.11.2007 12:43
Kontaktdaten:

Re: [3.3] weitere Warnungen nach Provider Umzug

Beitrag von cpg »

Das ist der Bereich in der base.php:

Code: Alles auswählen

// The row from the database (unless this is a new notification we're going to add)
		$this->data = $data;
		$this->data['notification_data'] = (isset($this->data['notification_data'])) ? unserialize($this->data['notification_data']) : array();
Ich würde mir in der Datenbank mal "phpbb3_notifications" anschauen
Fred
Mitglied
Beiträge: 76
Registriert: 25.01.2011 11:33
Wohnort: Lippstadt
Kontaktdaten:

Re: [3.3] weitere Warnungen nach Provider Umzug

Beitrag von Fred »

Hallo cpg, danke für den Tipp kannst du mir sagen auf was ich da achten muss ??

Gruß Fred
cpg
Mitglied
Beiträge: 542
Registriert: 24.11.2007 12:43
Kontaktdaten:

Re: [3.3] weitere Warnungen nach Provider Umzug

Beitrag von cpg »

In den phpbb3_notifications würde ich die notification_data nach "falschen Sonderzeichen" absuchen und die bereinigen
Antworten

Zurück zu „Support-Forum“