SQL-Befehl um PNs zu löschen

Fragen zur Bedienung von phpBB 3.0.x, Probleme bei der Benutzung und alle weiteren Fragen inkl. Update auf die neuste phpBB 3.0.14 Version
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
fontane
Mitglied
Beiträge: 295
Registriert: 03.02.2013 12:58

SQL-Befehl um PNs zu löschen

Beitrag von fontane »

Hallo,

ein User bat mich, einige PNs im Zeitraum von/bis zu löschen. Erst sgte ich ihm, er kann PNs ja selber löschen. Da er aber über 1000 PNs in seinem Postfach hat, verstehe ich sein Anliegen nun doch.

Beispiel:
User XYZ hat PNs in der Zeit vom 01.01.2013 bis 30.06.2013 erhalten.

Anfrage:
1. gelöscht haben möchte User XYZ die PNs in der Zeit vom 01.02.2013 bis 30.04.2013
2. alle PNs welche er im Zeitraum 01.05.2013 bis 31.05.2013 von User ABC erhielt.

Würde mir jemand die etwa erforderlichen SQL-Befehle dazu angeben?

Vielen Dank vorab für eine Hilfestellung.
phpbb 3.0.4 | PHP 7.4 | MySQL 5.7
Benutzeravatar
AYYILDIZLAR
Ehemaliges Teammitglied
Beiträge: 4148
Registriert: 09.11.2010 18:08
Kontaktdaten:

Re: SQL-Befehl um PNs zu löschen

Beitrag von AYYILDIZLAR »

Hallo,

Die Antwort hier ist jetzt nur meine persönliche Meinung und ich hoffe du verstehst mich nicht falsch, ich möchte mich nicht in die Administration deines Forums einmischen.

Warum willst du das für dein/e Mitglied/er machen? Was ist, wenn irgendwas verkehrt läuft? Du gibst versehentlich die verkehrte user_id oder den verkehrten Zeitraum ein und dann? Du übernimmst die Verantwortung dafür bzw. der User ist sauer/enttäuscht oder wie auch immer. Ausserdem, wo soll das hinführen? Der nächste kommt und will dann vom 23.12.2011 - 01.04.2012 die pn's aus seinem Postfach von Mitglied xy gelöscht haben. Willst du das dann auch machen? Ich hätte persönlich gar nicht die Zeit und die Lust dazu, die pn's verschiedener Mitglieder zu löschen und mich der Gefahr auszusetzen mir aus welchem Grund auch immer die Datenbank zu zerschiessen. Ich persönlich würde das nicht machen wollen.

Die pn's sind Privat Nachrichten und somit ist der User selbst verantwortlich für das Löschen oder nicht Löschen seiner pn's. Er/Sie könnte ja mehrere pn's gleichzeitig anhaken und so löschen und du bräuchtest deine Zeit nicht für solche Sachen aufopfern.

Wie gesagt, das ist nur meine persönliche Meinung und wie du das handhabst ist natürlich ganz alleine deine Sache.

Grüße
DasEtwasAndereMotorradforum.de
Deutsche Übersetzung der Tapatalk Extension | Deutsche Übersetzung der Tapatalk MOD
Bitte keine PN wegen Support, werde diese zukünftig ignorieren und gleich löschen.
Lehrling
Ehemaliges Teammitglied
Beiträge: 3833
Registriert: 15.01.2012 20:00
Kontaktdaten:

Re: SQL-Befehl um PNs zu löschen

Beitrag von Lehrling »

Hallo,

es ist weitaus weniger Aufwand, wenn der User seine PNs selbst löscht, als wenn du sie über die Datenbank löschst. Außerdem kann das Löschen über die Datenbank zu Fehlern führen.
Wir hatten mal den Fall, dass unsere Datenbank einem Hacker zum Opfer fiel und er wahllos PNs gelöscht hatte und zwar in der Tabelle privmsgs. Das führte dazu, dass bei manchen unserer Usern Phantom-PNs abgezeigt wurden. Das bedeutet, dass z.B. gemeldet wurde, dass eine neue PN da sei, man diese aber nicht abrufen konnte, da sie ja gelöscht war.

Hier habe ich damals etwas dazu geschrieben:

viewtopic.php?f=74&t=222061

Und es war eine Heidenarbeit damals, diese Phantom-PNs aufzufinden und zu löschen. Außerdem unterliegen PNs dem Briefgeheimnis und man sollte alle Betroffenen um Erlaubnis fragen, bevor man sich an ihren PNs zu schaffen macht.

LG Lehrling
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: SQL-Befehl um PNs zu löschen

Beitrag von Miriam »

Dein User könnte bspw. die PMs nach Autor sortieren lassen und dann die fraglichen PMs anhaken und hernach löschen.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
fontane
Mitglied
Beiträge: 295
Registriert: 03.02.2013 12:58

Re: SQL-Befehl um PNs zu löschen

Beitrag von fontane »

Miriam hat geschrieben:Dein User könnte bspw. die PMs nach Autor sortieren lassen und dann die fraglichen PMs anhaken und hernach löschen.
Für das Eingansgproblem habe ich eine Lösung angedacht: Ich stelle fest, dass der User der einzige ist welcher über 20PNs hat. Wenn ich die maximal PNs auf 20 stelle, werden doch alle vorhandenen über 20 gelöscht - richtig? Danach wieder auf 1000 setzen und die PNs müssten weg sein.

Edit: ja es funktioniert so, gerade getestet.
phpbb 3.0.4 | PHP 7.4 | MySQL 5.7
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: SQL-Befehl um PNs zu löschen

Beitrag von Miriam »

Genauso funktioniert es.
Aber: Es sind dann alle anderen PNs weg, egal von welchen Datums.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Antworten

Zurück zu „[3.0.x] Administration, Benutzung und Betrieb“