Berichten verwijderen van 1 gebruiker.

Installatie lukt niet? Plotseling een foutmelding. Of weet je niet hoe iets werkt. Problemen met phpBB2 kun je in dit archief opzoeken.
Forumregels

Sinds 1 januari 2009 wordt phpBB2 niet meer ondersteund.
Onderstaande informatie is verouderd en dient uitsluitend als archief.
phpBB2.0.x
Gesloten
Gebruikersavatar
James9944
Berichten: 11
Lid geworden op: 14 jul 2004, 20:29

Berichten verwijderen van 1 gebruiker.

Bericht door James9944 » 14 jul 2004, 20:34

Kan ik op eenvoudige wijze ALLE berichten van een bepaalde gebruiker verwijderen ?

(liefst EEN druk op de knop :) )

Greetz : James

Jeanneke
Berichten: 44
Lid geworden op: 12 jul 2004, 15:03
Locatie: Breda
Contacteer:

Bericht door Jeanneke » 14 jul 2004, 21:02

Ik denk dat als je de gebruiker uit de lijst verwijderd, je ook meteen alle berichten van die persoon kwijt bent.
Ik weet niet of dat de bedoeling is?

Gebruikersavatar
christel
Berichten: 239
Lid geworden op: 20 feb 2004, 21:31
Locatie: Nijmegen
Contacteer:

Bericht door christel » 14 jul 2004, 21:26

Wat Jeanneke zegt klopt niet. Als je een gebruiker verwijderd blijven de posts staan maar verandert de gebruikersnaam in "gast". :wink:

Misschien is er wel een mod voor, geen idee....

Gebruikersavatar
Stef
Berichten: 9080
Lid geworden op: 04 jun 2003, 20:47

Re: Berichten verwijderen van 1 gebruiker.

Bericht door Stef » 14 jul 2004, 23:12

James9944 schreef:Kan ik op eenvoudige wijze ALLE berichten van een bepaalde gebruiker verwijderen ?

(liefst EEN druk op de knop :) )

Greetz : James

Ehm het kan volgensmij wel maar niet met 1 druk op de knop. Dan zal je in de database moeten. En dan weet ik niet zeker of het daar zo gemakkelijk gaat.

Gebruikersavatar
Podium4
Berichten: 3009
Lid geworden op: 07 aug 2003, 15:32
Locatie: Groningen / Zwolle

Bericht door Podium4 » 15 jul 2004, 00:16

Maak een backup van je database voor je deze stappen uitvoert! Als er iets fout gaat kun je niet meer terug zonder dat je een backup hebt. Kijk in de kennisbank hoe je een backup maakt van je db

Ik heb even gekeken hoe die posts nou precies zijn opgeslagen in een phpbb database... en dat valt me nog vies tegen eigenlijk...:

phpbb_topics (topic_poster) hier kan alles uitgehaald worden van de poster, omdat we met een WHERE opdracht kunnen aangeven dat alle posts van userid X wegmoeten...

phpbb_posts (post_id, topic_poster) hiervoor geldt hetzelfde als voor phpbb_topics

phpbb_posts_text (post_id) nu wordt het vervelend. Deze tabel is via post_id gekoppeld aan phpbb_posts. Er staan in deze tabel dus geen user_id gegevens.


Het is gelukkig wel te doen. Om dit uit te voeren heb je in ieder geval je phpmyadmin nodig. Zonder dat wordt het heel lastig.

Allereerst beginnen we makkelijk. We gaan de phpbb_topics tabel ontdoen van alle posts van user_id X (vervang X door user_id, dat is het gebruikersnummer...)
Voer deze querie daarvoor uit:

Code: Selecteer alles

DELETE FROM phpbb_topics WHERE topic_poster =  'X';
Vervang dus X door het gebruikers_id

Nu gaan we verder met het lastige deel. phpbb_posts en phpbb_posts_text moeten ontdaan worden van de posts van user_id X. Allereerst willen we graag weten welke posts in phpbb_posts_text van user_id X zijn, dat kunnen we nu namelijk nog niet zien...

Voer de volgende querie uit om te zien welke post_id's van user_id X zijn. Als we dit weten kunnen we namelijk deze post_id terugvinden in de phpbb_posts_text tabel om zo de posts van user_id X daar ook te verwijderen:

Code: Selecteer alles

SELECT `post_id` , `poster_id` 
FROM `phpbb_posts` 
WHERE `poster_id` = X
Denk er weer aan om X te vervangen met het betreffende user_id.

Zo, dat schiet al op... hier hebben we wat aan. Een hele lijst met post_id die van user_id X zijn.

Wat je nu moet doen is misschien een beetje omslachtig, maar het is volgens mij de enigste methode, open kladblok of een ander text-editor prog, en typ daar alle post_id's neer van user_id X. Typ ze dus gewoon over van je phpmyadmin.

Als je daarmee klaar bent gaan we verder met schoonmaken. Voer de volgende querie uit om je phpbb_posts tabel schoon te maken:

Code: Selecteer alles

DELETE FROM phpbb_posts WHERE poster_id =  'X';
Zo, nu de laatste stap en we zijn klaar :) . Pak het tekstbestandje er weer bij. Aan de hand daarvan gaan we een querie samenstellen om alle spullen van user_id X uit de phpbb_posts_text te halen.

Code: Selecteer alles

DELETE FROM phpbb_posts_text
WHERE post_id =  'post_id';
DELETE FROM phpbb_posts_text
WHERE post_id =  'post_id';
DELETE FROM phpbb_posts_text
WHERE post_id =  'post_id';
DELETE FROM phpbb_posts_text
WHERE post_id =  'post_id';
Vervang nu de laatste 'post_id' van elke onderste regel in een getal uit je tekst bestand... de querie kan daardoor nog veel langer worden dan dit ...

Succes!
Alleen support via het forum, dus geen support via email, msn of pb.

Gebruikersavatar
James9944
Berichten: 11
Lid geworden op: 14 jul 2004, 20:29

Bericht door James9944 » 15 jul 2004, 07:15

Inderdaad niet zo makkenlijk. Ik ga het proberen. Alvast bedankt voor de moeite !

Greetz : James

Gesloten