Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 4 Gast/Gäste
Auto Prune gebannter User nach Zeitspanne
#1
Hi,
ich banne User immer erst, wenn sie im Forum abgelehnt werden, damit diese nicht die Mgölichkeit haben sich direkt neu anzumelden (und eine E-Mail bekommen, das ist aber ein anderes Thema)
Nun müssen die User aber irgendwann auch mal gelöscht werden, das würde ich am liebsten per Auto Prune machen, habe jedoch bisher kein Mod gefunden Sad

lg
Zitieren
#2
Ich habe ein älteres Plugin gefunden, das Du mit einer kleinen Änderung für Deinen Zweck einsetzen kannst:

Inactive Account Janitor

Zeile 45:
Ersetze TYPE = MYISAM mit ENGINE = MYISAM

Zeile 114 und 150:
Ersetze usergroup='5' mit usergroup='7' - vorausgesetzt Deine Banned-Usergroup ist immer noch die 7 !

Lösche Zeile 126 -> $db->delete_query("moderators", "uid='{$user['uid']}'");

Dann einstellen, wie hoch das Mindestalter der Accounts sein soll, die gelöscht werden sollen. In dem Beispielbild werden Accounts älter als 7 Tage gelöscht und die Aufgabe wird täglich durchgeführt:

ACP -> Konfiguration -> Account janitor options

   

Du kannst auch manuell prunen und Dir die Stats anzeigen lassen, indem Du folgende URL aufrufst:

Dein Forum /index.php?janitor=show

Unbedingt ein Backup vor der ersten Ausführung erstellen! Nur falls irgendetwas schief geht bei der Installation. Wink

Einfacher wäre eine spezielle task.php für Deinen Zweck, aber die müsste dann jemand anders coden. Ich weiss leider nicht genau die Befehle um nach Datum zu löschen. Aber die oben genannte Lösung klappt auf jeden Fall auch. Hab´s gerade alles lokal getestet. Und mit der kleinen Statistik finde ich auch ganz nett. Wink
Zitieren
#3
(19.10.2012, 11:17)GreenDragon schrieb: Einfacher wäre eine spezielle task.php für Deinen Zweck, aber die müsste dann jemand anders coden. Ich weiss leider nicht genau die Befehle um nach Datum zu löschen. Aber die oben genannte Lösung klappt auf jeden Fall auch. Hab´s gerade alles lokal getestet. Und mit der kleinen Statistik finde ich auch ganz nett. Wink
Gebannte User gezielt nach Datum auslesen und dann delete durchführen.
Zitieren
#4
Hi, danke für deine Hilfe. Ich hab das jetzt mal alles so eingestellt, das Plugin ist aber noch nicht aktiviert, da mir noch ein kleines Problem aufgefallen ist. So wie ich das verstehe, zählt das Plugin ja ab Registrierungsdatum. Nun hab ich aber das Problem, dass manche User nach 1 Tag gebannt werden, manche erst nach 7, noch weniger nach 4 Wochen und ganz wenige noch viel später. Hoffe du verstehst worauf ich hinaus will. Ich könnte nun natürlich die Zeit beispielsweise auf 37 Tage stellen, dann bleiben aber die, die nach 1 Tag gebannt wurden noch ewig in der Datenbank und die, die vll nach 3 Monaten gebannt wurden, werden sofort gelöscht. (wobei letzteres nicht so das Problem ist, denn wer nach 3 Monaten gelöscht wird, hat wohl kaum das bedürfnis plötzlich wieder ins Forum zu kommen Wink )

lg
Zitieren
#5
Du könntest in der php, Zeile 120, anstelle "$user['regdate']" das Datum des letzten Besuchs nehmen -> $user['lastvisit']. Auf diese Art werden dann User die erst vor beispielsweise einem Tag gebannt worden sind, noch nicht gelöscht. Nur die, die X Tage nicht mehr da waren und in der banned-group sind, werden dann entfernt. Hilft Dir das weiter?
Zitieren
#6
Mhh... jein... mal im klartext: ich hab user die sind einfach strohdoof Wink die loggen sich auch als gebannter user noch x-fach ein, keine ahnung warum, sie bekommen ja sogar eine infomail beim bannen....
aber ich denke ich machs erstmal einfach so, die ganz hartnäckigen Fälle kann ich ja immer noch per Hand löschen. Danke noch mal. Eine Frage noch: die Beiträge der gelöschten User bleiben dabei aber erhalten, oder?
Zitieren
#7
(22.10.2012, 11:43)me.lina schrieb: Eine Frage noch: die Beiträge der gelöschten User bleiben dabei aber erhalten, oder?

Ja, die bleiben erhalten. Wäre auch teilweise übel, denn wenn der gebannte User auch Erstbeiträge hat, dann verschwinden somit auch Folgebeiträge. Deswegen sollte auch niemals ein Mitglied Beiträge löschen dürfen. Vor zig Jahren haten wir sowas mal, als man noch unerfahren war, und dann plötzlich ein genervter User alle Posts löschte, und an die 500 Beiträge der anderen Member gleich mit weg waren ^^.
Zitieren
#8
Ja das stimmt.
Irgendwie scheint das Plugin nicht so recht zu laufen :/
Ich hab alles so gesetzt wie du gesagt hast, das Plugin aktiviert, die Tage auf 7 gestellt und den Intervall auf 1. Allerdings sind immer noch alle Benutzer da. Kann es sein, dass sich das erst auf User auswirkt, die nach der Aktivierung des Plugins gebannt wurden?

lg
Zitieren
#9
(24.10.2012, 11:45)me.lina schrieb: Kann es sein, dass sich das erst auf User auswirkt, die nach der Aktivierung des Plugins gebannt wurden?

Nein. Das Plugin entfernt mit den vorgegebenen Werten alle User die sich in der banned-group befinden. Das hat mit der Aktivierung nichts zu tun. Natürlich dauert es eventuell bis zu 24 Std, bevor der eingestellte Intervallzeitraum die User bereinigt. Du kannst ja mal warten oder schon mal manuell prunen, indem Du "Dein Forum /index.php?janitor=show" aufrufst. Aber ich würde erst einmal einen Tag warten. Ich check leider selbst nicht genau wie die automatische Funktion in dem Plugin gecodet ist, also wann genau der Prozess automatisch ausgeführt wird. Müsste aber normal in einem 24-Std. Zeitraum erfolgen.
Zitieren
#10
Naja die Aktivierung ist jetzt bereits über 50h her, deshalb fragte ich.
Wenn ich es manuell ausführe sagt Janitor:
Existing inactive accounts: 30
Number of janitor runs: 0
Accounts deleted by janitor: 0
Last run: 10-22-2012
Next scheduled run: Gestern

Also muss da irgendwo ein Fehler drin sein.

lg

edit: hab auch eben noch einmal die komplette php geprüft. mal abgesehen davon, dass die eine gid in zeile 149 ist anstatt 150 Wink stimmt alles überein.
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  E-mail an User bei löschung (prune) me.lina 3 1.593 06.10.2012, 19:54
Letzter Beitrag: borsti67
  Prune Members 1.1 Beatrice63 2 2.047 19.12.2010, 15:58
Letzter Beitrag: Michael