Beiträge: 1.721
Themen: 177
Registriert seit: 08.02.2018
MyBB-Version: 1.8.37
29.11.2020, 15:55
(Dieser Beitrag wurde zuletzt bearbeitet: 29.11.2020, 16:08 von Gerti.)
Hallo Community,
habe mir eine Task-Datei erstellt aktiviert in welcher ich User der Gruppe "5" (soweit sie länger als 24 Stunden nicht aktiviert haben) wieder gelöscht werden sollen. Irgend etwas klappt mit dem Befehl nicht. Eine Aufgabenplanung welche die Task-Datei aufruft wurde selbstverständlich erstellt.
PHP-Code:
function delete_user_not_activated($task)
{
global $db;
// Löschen aller User welche ihren Account nicht binnen 24 Stunden nach Registrierung aktiviert haben
if ($usergroup = 5 && ($regdate < TIME_NOW-(60*60*24))) {
$sql = "DELETE FROM `mybb_users` WHERE usergroup = 5";
$mysqli->query($sql);
}
add_task_log($task, "Löschung der nicht aktivierten User (>246 Stunden) ausgeführt");
}
?>
ob mit oder ohne IF-Bedinung bzw. mit oder ohne Hochstrich, nciht funktioniert.
Nur:
PHP-Code:
DELETE FROM `mybb_users` WHERE usergroup = 5;
funktioniert in phpMyAdmin aber nicht im Task.
Was mache ich falsch?
Sollte ich der Ansicht sein helfen zu können biete ich Hilfe(n) an! ...ich bitte jedoch nicht darum helfen zu dürfen!
Tools ◀ [
Unixzeit ⇔ Realzeit] ♦ [
BOM-Finder] ♦ [
SQL-Prefix-Changer] ♦ [
USV-Rechner] ♦ [
PlugIns]
Beiträge: 1.136
Themen: 39
Registriert seit: 27.08.2014
1. Was steht in usergroup drin?
2. Wieso vergleichst du mit einem = anstatt ==
Beiträge: 1.401
Themen: 25
Registriert seit: 11.10.2013
MyBB-Version: 1.8.*
Diese Option gibt es standardmäßig doch bereits
Schau mal in den ACP-Einstellungen unter "Benutzer bereinigen"
Beiträge: 1.721
Themen: 177
Registriert seit: 08.02.2018
MyBB-Version: 1.8.37
(29.11.2020, 16:17)itsmeJAY schrieb: 1. Was steht in usergroup drin?
2. Wieso vergleichst du mit einem = anstatt ==
zu 1 = Inhalt: 5
zu 2 = auch versucht.
(29.11.2020, 16:25)SvePu schrieb: Diese Option gibt es standardmäßig doch bereits
Schau mal in den ACP-Einstellungen unter "Benutzer bereinigen"
Danke, das war die Lösung!
Hätte ich mir den Zeitaufwand ersparen können.
Unabhängig davon würden mich trotzdem die korrekten Befehlsaufbauten interessieren, man hat ja noch weitere Ideen.
Sollte ich der Ansicht sein helfen zu können biete ich Hilfe(n) an! ...ich bitte jedoch nicht darum helfen zu dürfen!
Tools ◀ [
Unixzeit ⇔ Realzeit] ♦ [
BOM-Finder] ♦ [
SQL-Prefix-Changer] ♦ [
USV-Rechner] ♦ [
PlugIns]
Beiträge: 2.041
Themen: 10
Registriert seit: 28.06.2007
MyBB-Version: 1.8.x
(29.11.2020, 16:38)Gerti schrieb: Unabhängig davon würden mich trotzdem die korrekten Befehlsaufbauten interessieren, man hat ja noch weitere Ideen.
Auf den ersten Blick fehlt hier ein zweites = Zeichen:
Beiträge: 1.136
Themen: 39
Registriert seit: 27.08.2014
Hatte ich oben schon erwähnt, hehe
Beiträge: 25.766
Themen: 269
Registriert seit: 20.09.2005
29.11.2020, 17:23
(Dieser Beitrag wurde zuletzt bearbeitet: 29.11.2020, 17:27 von StefanT.)
Ehrliche Meinung: Der Code ist nicht zu retten. Die Variablen $usergroup, $regdate und $mysqli gibt es nicht, die Abfrage ist fehlerhaft und das Datenbank-Query unvollständig.
Zudem ist es ist äußerst unsauber direkt in der Tabelle mybb_users zu löschen, weil es in vielen anderen Tabellen, mehreren Caches und noch im Dateisystem (Avatare) Verweise auf diese gibt. Zum Vergleich hier der Code, der bei einer ordentlichen Lösung ausgeführt wird:
https://crossreference.mybb.de/inc/datah...html#l1490
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Beiträge: 1.721
Themen: 177
Registriert seit: 08.02.2018
MyBB-Version: 1.8.37
Wie von euch erwähnt, genügt es nicht einfach den User inder Tabelle mybb_users zu löschen, da nach der Registrierung die User-ID in insgesamt drei Tabellen enthalten ist. Man müsste somit zuerst mittels einem Array die User-IDs der Gruppe 5 erfassen und dieselbigen dann in allen betroffenen Tabellen löschen.
Nachdem die Funktion, wie ich Dank eures Hinweises entdecken durfte, bereits in MyBB enthalten ist hat sich meine Anfrage erübrigt.
Besten Dank für die Hinweise, Tipps, und Anregungen.
Sollte ich der Ansicht sein helfen zu können biete ich Hilfe(n) an! ...ich bitte jedoch nicht darum helfen zu dürfen!
Tools ◀ [
Unixzeit ⇔ Realzeit] ♦ [
BOM-Finder] ♦ [
SQL-Prefix-Changer] ♦ [
USV-Rechner] ♦ [
PlugIns]