User wiederherstellen
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.
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.
User wiederherstellen
Ich habe fälschlicherweise einen User gelöscht (Über Admin-Panel). Ichhabe daraufhin im phpMyAdmin den User mit der gleichen ID wieder erstellt. Wir kann ich es nun machen, dass die rund 2000 Beiträge wieder diesem User zugeordnet werden? Muss ich bei allen Beiträge manuell wieder den Benutzernamen (bzw. die ID) hinzufügen?
Oder kann man da gar nichts machen?
Oder kann man da gar nichts machen?
Da kann man nicht viel machen. Gelöscht ist gelöscht...
Hast Du dem User denn auch eine Gruppe erstellt und ihn da reingepackt, um das phpbb-Rechte-System nicht zu verwirren?
Tip: Der DB-Maintenance-Mod kann das automatisch machen.
Die 2000 Beiträge mußt Du wohl manuell wieder ihm zuteilen. Denn die wurden alles auf "von Gast" gestellt. Ausser Du hast noch ein altes Backup. Dann könntest Du Dir ein Script schreiben, welches die Beiträge Updatet. Sowas gibt es aber glaube ich nicht fertig...
Grüße
Dennis
Hast Du dem User denn auch eine Gruppe erstellt und ihn da reingepackt, um das phpbb-Rechte-System nicht zu verwirren?
Tip: Der DB-Maintenance-Mod kann das automatisch machen.
Die 2000 Beiträge mußt Du wohl manuell wieder ihm zuteilen. Denn die wurden alles auf "von Gast" gestellt. Ausser Du hast noch ein altes Backup. Dann könntest Du Dir ein Script schreiben, welches die Beiträge Updatet. Sowas gibt es aber glaube ich nicht fertig...
Grüße
Dennis
Den DB-Maintenance-Mod habe ich mal durchlaufen lassen. Hat die Gruppe erstellt.Dennis Böge hat geschrieben:Da kann man nicht viel machen. Gelöscht ist gelöscht...
Hast Du dem User denn auch eine Gruppe erstellt und ihn da reingepackt, um das phpbb-Rechte-System nicht zu verwirren?
Tip: Der DB-Maintenance-Mod kann das automatisch machen.
Die 2000 Beiträge mußt Du wohl manuell wieder ihm zuteilen. Denn die wurden alles auf "von Gast" gestellt. Ausser Du hast noch ein altes Backup. Dann könntest Du Dir ein Script schreiben, welches die Beiträge Updatet. Sowas gibt es aber glaube ich nicht fertig...
Klar wurde alles auf Gast gestellt, aber überall wurde ja der Username des ehemals registrierten hinzugefügt. Also wenn der User "Peter" z.B. 10 Beiträge geschrieben hat und dann der User gelöscht wird, werden seine Beiträge ja auf "Peter Gast" (sozusagen) umgestellt. In der Tabelle phpbb_post wurde ja einfach die Poster_ID auf -1 gesetzt und bei post_username der Name hinzugefügt (in diesem Beispiel Peter). Also kann ich ja mit "Teilweise Anzeigen" alle Post herausfiltern, die post_username=Peter sind. Allso wäre es problemlos herauszufinden, welche Beiträge dem User wieder zugeordnet werden müssen. Nur bin ich nicht wirklich gut im Programmieren, also wüsste ich nicht, wie es automatisieren könnte, dass in alle Zeilen mit post_username=Peter die Zelle poster_id=-1 in poster_id=10 (ID von Peter) geändert werden.
Stimmt, da habe ich gar nicht dran gedacht.
!! Ohne Gewähr !!
- Der MySQLCode ist nur flüchtig zusammengeschrieben und ungetestet. Username und Poster_Id mußt Du anpassen. Danach sollte es gehen, ist aber ungeprüft (ich lösche keinen User, nur um das zu überprüfen...) - Mache also vorher ein Backup...
!! Ohne Gewähr !!
Grüße
Dennis
!! Ohne Gewähr !!
Code: Alles auswählen
UPDATE phpbbb_posts SET poster_id = 5 WHERE post_username='Pedddder'
!! Ohne Gewähr !!
Grüße
Dennis
Hi. Ja, das 3. B war absichtlich da. Du solltest Dir den Code wenigsten angucken, bevor Du ihn nutzt 
Zu Den Topics: Es gibt die Spalte "phpbb_topics_topic_poster_id"... Die muss auch noch wiederhergestellt werden. Mit Hilfe der Spalte first_topic_post_id kann man dann prüfen, ob der Topic_Poster der selbe Poster für das Posting ist...
Jedoch wird der MySQL Code dafür etwas länger.
Den Anfang geb ich Dir mal (Leider ist meine alte Version von MySQLFront mal wieder abgeschmiert - daher tippe ich den Code mal so ein - da sind bestimmt diverse Feher drinne..
Das Ergebnis sollten alle Topic_IDs sein, die von dem besagen User kommen,aber NICHT seine User ID tragen. Aber der Code ist jetzt wirklich "ungeprüft" - Denn bei meinem Check konnte ich irgendwie das Ergebnis nicht nachvollziehen - Aber es sollte Dir als kleine Hilfe bestimmt reichen, wenigsten die Topic_Ids zu bekommen.
Grüße
Dennis
Zu Den Topics: Es gibt die Spalte "phpbb_topics_topic_poster_id"... Die muss auch noch wiederhergestellt werden. Mit Hilfe der Spalte first_topic_post_id kann man dann prüfen, ob der Topic_Poster der selbe Poster für das Posting ist...
Jedoch wird der MySQL Code dafür etwas länger.
Den Anfang geb ich Dir mal (Leider ist meine alte Version von MySQLFront mal wieder abgeschmiert - daher tippe ich den Code mal so ein - da sind bestimmt diverse Feher drinne..
Code: Alles auswählen
SELECT phpbb_topics.topic_id FROM (....)
WHERE phpbb_topics.first_post_id = phpbb_posts.post_id
AND phpbb_topics.poster_id <> phpbb_posts.poster_id
Grüße
Dennis
Mit
wird mir die Liste angezeigt. Und da ich es nicht automatisieren kann, werde ich einfach bei den neusten paar Threads das ganze Manuell anpassen.
Code: Alles auswählen
SELECT phpbb_topics.topic_id FROM (phpbb_topics, phpbb_posts)
WHERE phpbb_topics.topic_first_post_id = phpbb_posts.post_id
AND phpbb_topics.topic_poster <> phpbb_posts.poster_id AND phpbb_posts.post_username = 'Peddder'