Neusortierung nach Datenbankfusion?

Probleme bei der regulären Arbeiten mit phpBB, Fragen zu Vorgehensweisen oder Funktionsweise sowie sonstige Fragen zu phpBB im Allgemeinen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
uniquex
Mitglied
Beiträge: 13
Registriert: 05.01.2005 06:47

Neusortierung nach Datenbankfusion?

Beitrag von uniquex »

Hallo Community!

Nach endlosen Bastelstunden ist es mir gelunden zwei phpBB Dumps aus verschiedenen Foren erfolgreich zu fusionieren (mergen).
Das einzige Problem was jetzt jedoch leider besteht, ist folgendes:

Die Sortierung der Threads in den einzelnen Unterforen ist nicht mehr korrekt. Vorher erfolgte dies nach Datum (des letzen Beitrags in absteigender Reihenfolge), jetzt nicht mehr (auf keinen der Beiträge wurde geantwortet, die Sortierung sollte also stimmen, tut sie aber nicht):

[ externes Bild ]

Ich habe versucht die Foren zu 'resynchronisieren', ebenso habe ich es mit einen Maintenance Script versucht, leider erfolglos!
Wer kann mir einen Ansatz geben, diesen Fehler zu korregieren oder mir vll. sogar zur Hand gehen (soll nicht kostenlos sein)?

Die Daten manuell zu ändern kommt aufgrund von über 50.000 merged Postings nicht in Frage.

Danke
uniquex
Benutzeravatar
cYbercOsmOnauT
Ehemaliges Teammitglied
Beiträge: 3820
Registriert: 18.02.2004 23:02
Wohnort: Göttingen
Kontaktdaten:

Beitrag von cYbercOsmOnauT »

In der viewforum.php findet sich nach Zeile 311

Code: Alles auswählen

// Grab all the basic data (all topics except announcements)
die SQL welches die Themen aus der DB liest. Wie man am Ende erkennen kann

Code: Alles auswählen

ORDER BY t.topic_type DESC, t.topic_last_post_id DESC
sortiert das erste die wichtigen Themen vor den normalen. Danach wird nach dem Wert der Zelle topic_last_post_id sortiert.
Das phpBB Forum geht davon aus, dass die post_id's auch chronologisch vergeben werden (ist ja auch normal so) und sortiert deswegen einfach nach diesen post_id's. Da Du jedoch 2 DB's verschmolzen hast, ist diese chronologische Reihenfolge nicht mehr gegeben.
Soviel zur Erklärung der Ursache.

Lösung:
Ändere die ORDER Zeile zu

Code: Alles auswählen

ORDER BY t.topic_type DESC, p2.post_time DESC
dies sollte dann wieder eine chronologische Sortierung anzeigen.

Viele Grüße,
Tekin
• prof. phpbb-Installation, Reparatur, Rettung nach Hackattacken, sowie PHP/JS Programmierung aller Art
Zend Certified Engineer, Linux Administrator und die Sicherheit von 34 Jahren Programmiererfahrung
• Interesse? Kontakt unter t.birduezen@web-coding.eu
uniquex
Mitglied
Beiträge: 13
Registriert: 05.01.2005 06:47

Beitrag von uniquex »

Vielen Dank für den Hinweis, werde ich direkt mal ausprobieren!

Btw. Wie kann das denn passieren? Die Sortierung stimmte ja vorher und es wurde nichts am Script geändert! Korregiert die o.g. Lösung auch geshiftete Threads in der Sortierung?

edit: ok, Erklärung verstanden (nach nochmaligen Lesen)!
Antworten

Zurück zu „phpBB 2.0: Administration, Benutzung und Betrieb“