WBB2 Forensoftware von WoltLab, Posts gelöschter User wiederherstellen und zuordnen.
Beim Löschen von Usern im WBB 2.3.x werden allte Posts der User - ID 0 zugeordnet und können darüber nicht mehr selektiv reaktiviert und einem anderen / neuen User zugeordnet werden. Handbuch und wbb-Forum gibt zu diesem Thema nichts her.
Um diese Aufgabe zu lösen hier das HowTo:
Dieser Workaround wurde unter WoltLab Burning Board 2.3.4 durchgeführt und getestet.
Aufgabe:
Dem aktiven User HugoNEU sollen die Postings des gelöschten Users PaulALT zugeordnet werden, diese Posts sind mit anderen Posts unter User - ID 0 zugeordnet. Somit taugt die ID (wie im Forum verwendet) dafür micht.
Der technische Hintergrund:
Das Löschen eines Users erfolgt im wbb 2.3.x durch Zuweisung der Posts dem User mit der ID 0. Wurden mehrere User gelöscht bekommen die Posts alle die User-ID 0 und sind somit nicht mehr getrennt zu bearbeiten oder zu rekonstruieren.
Wie aber zu sehen ist bleibt den Postings der Name des Autoren erhalten, auch wenn dessen Ersteller bereits gelöscht wurde.
Lösung:
Wir öffnen die mysql-Datenbank des WBB Forums:
mysql
mysql>USE forum_db_name -user db_username -pdb_user_password;
Wir zeigen uns die in der Datenbank enthaltenen Tabellen an:
mysql>SHOW TABLES;
Unter anderen Tabellen finden wir die Tabelle bb1_posts, ein guter Name für eine Tabelle die Postings ihren vorherigen Autorennamen zuordnen soll.
Wir listen und betrachten die tabelle bb1_posts näher:
mysql>SHOW COLUMNS FROM bb1_posts;
und finden unter anderem die Spalten userid und username.
Wir rekapitulieren: Alle gelöschten User und deren Postings haben die User-ID Null, der Autorenname (username) bleibt dennoch in den Postings erhalten.
Angenommen unser User HugoNEU besitzt die User-ID 152, dann ordnen wir neu zu
mysql>UPDATE bb1_posts SET userid=152 WHERE username="PaulALT";
alle Posts des nicht mehr vorhandenen Users PaulALT.
Nun stimmt die in seinem Profil angezeigte Beitragsanzahl nicht mehr. Der Vergleich der in der Datenbank enthaltenen Tabellennamen zeigt dass die Tabelle bb1_users Speicherort für diese Information ist. Diese enthält unter anderem eine Spalte mit der Überschrift userposts. Ein idealer Name für einen deratigen Zweck.
Durch den Befehl:
UPDATE bb1_users SET userposts=??? WHERE userid=152;
wird der Wert automatisch aktualisert.
Woher wissen wir aber die korrekte Summe aller alten und neu zugeordneten Posts?
Die Foren-SW zählt sie für uns indem wir in der Mitgliederliste den entsprechenden Suche-Button neben HugoNeu benutzen.
Technischer Support zu WBB und weiterer Software: http://www.cdx.de
Weitere Tipps und Informationen über unser Artikelverzeichnis gibt es hier. Die Sitemap listet alle Artikel im 0AM.de Artikelverzeichnis.
Im 0AM.de Artikelverzeichnis werden interessante Projekte im Rahmen eines Artikels vorgestellt, wie hier der Artikel über
`WBB2 Forensoftware von WoltLab, Posts gelöschter User wiederherstellen und zuordnen`, auch Sie können hier Autor werden und einen Artikel veröffentlichen lassen.