MyBB.de Forum
Benutzer automatisch löschen möglich??? - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: Archiv (https://www.mybb.de/forum/forum-57.html)
+--- Forum: MyBB 1.4.x (https://www.mybb.de/forum/forum-51.html)
+---- Forum: Allgemeiner Support (https://www.mybb.de/forum/forum-52.html)
+---- Thema: Benutzer automatisch löschen möglich??? (/thread-12671.html)

Seiten: Seiten: 1 2 3


RE: Benutzer automatisch löschen möglich??? - Michael - 21.03.2009

Das findet dann die gleichen Benutzer. Es ist also egal, welche Variante du nimmst.


RE: Benutzer automatisch löschen möglich??? - borsti67 - 22.03.2009

Prima, danke!

Um die gelöschten User-Namen ins Log einzutragen, müsste man wohl vor den Update-Queries erst noch eine zusätzliche Abfrage machen, oder steht der jeweils irgendwo "griffbereit"?
Die Anzahl der gelöschten User könnte man über eine Zähl-Variable innerhalb der "while"-Schleife lösen, oder geht das auch einfacher?


RE: Benutzer automatisch löschen möglich??? - Michael - 22.03.2009

(22.03.2009, 15:07)borsti67 schrieb: Um die gelöschten User-Namen ins Log einzutragen, müsste man wohl vor den Update-Queries erst noch eine zusätzliche Abfrage machen, oder steht der jeweils irgendwo "griffbereit"?
Ersetze
PHP-Code:
$query $db->simple_select("users""uid""usergroup = '5' AND regdate < {$cut}"); 
durch
PHP-Code:
$query $db->simple_select("users""uid,username""usergroup = '5' AND regdate < {$cut}"); 
Dann ist in $users['username'] der Benutzername verfügbar und kann weiterverarbeitet werden.
(22.03.2009, 15:07)borsti67 schrieb: Die Anzahl der gelöschten User könnte man über eine Zähl-Variable innerhalb der "while"-Schleife lösen, oder geht das auch einfacher?
Entweder so oder du lässt dir einfach die Anzahl der Datensätze des Queries ausgeben:
PHP-Code:
$db->num_rows($query); 



RE: Benutzer automatisch löschen möglich??? - borsti67 - 22.03.2009

Na sowas, jetzt lerne ich noch PHP nebenbei... Wink

Kannst Du bitte noch einen letzten Blick drauf werfen, ob ich's richtig gemacht habe?
PHP-Code:
<?php
function task_pruneinactivemembers($task)
{
    global 
$db;

    
// Nicht aktivierte Accounts löschen
    
$cut TIME_NOW-604800;
    
// User, die nie eingeloggt waren, löschen
    
$query $db->simple_select("users""uid,username""usergroup = '2' AND timeonline = 0 AND regdate < {$cut}");
    
$numdel $db->num_rows($query);

    while(
$users $db->fetch_array($query)) {
        
add_task_log($task"Account {$users['username']} wird gelöscht.");
        
$db->update_query("posts", array('uid' => 0), "uid='{$users['uid']}'");
        
$db->delete_query("userfields""ufid='{$users['uid']}'");
        
$db->delete_query("privatemessages""uid='{$users['uid']}'");
        
$db->delete_query("events""uid='{$users['uid']}'");
        
$db->delete_query("moderators""uid='{$users['uid']}'");
        
$db->delete_query("forumsubscriptions""uid='{$users['uid']}'");
        
$db->delete_query("threadsubscriptions""uid='{$users['uid']}'");
        
$db->delete_query("sessions""uid='{$users['uid']}'");
        
$db->delete_query("banned""uid='{$users['uid']}'");
        
$db->delete_query("threadratings""uid='{$users['uid']}'");
        
$db->delete_query("users""uid='{$users['uid']}'");

        
update_stats(array('numusers' => '-1'));
    }

    
add_task_log($task$numdel." nicht aktivierte/genutzte Accounts gelöscht.");
}
?>



RE: Benutzer automatisch löschen möglich??? - Michael - 23.03.2009

Ja, sieht gut aus. Wink


RE: Benutzer automatisch löschen möglich??? - borsti67 - 26.03.2009

Kurzes Feedback: Ja, funktioniert. Smile

Code:
nie genutzte User löschen   Heute, 05:30   Account Resi89 wird gelöscht.
nie genutzte User löschen   Heute, 05:30   1 nicht aktivierte/genutzte Accounts gelöscht.

Nochmal Danke, Michael! Thumbs_up