Automatisches löschen nicht aktivierter Zugänge

Probleme bei der regulären Arbeiten mit phpBB, Fragen zu Vorgehensweisen oder Funktionsweise sowie sonstige Fragen zu phpBB im Allgemeinen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Ecronika
Mitglied
Beiträge: 6
Registriert: 25.09.2006 17:25
Wohnort: Hamburg

Automatisches löschen nicht aktivierter Zugänge

Beitrag von Ecronika »

Guten Tag.

Ich nutze in meinem Forum die Aktivierung per Email (Aktivierungs-Adresse) und möchte diese insofern erweitern, daß Zugänge, die nicht innerhalb von z.B. 24 Stunden aktiviert werden automatisch wieder gelöscht werden.

Habe ich eine entsprechende Funktion übersehen oder gibt es einen geeigneten MOD hierfür?

Gruß, Ecronika (Tobias Paul)
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Baue das in deiner index.php ein....

Code: Alles auswählen

$sql="delete FROM " . USERS_TABLE . " WHERE user_active=0 AND user_id > 2 AND ((" . time()-intval(user_regdate) . ") > 86400)";
if ( !($result = $db->sql_query($sql)) )
{
   message_die(GENERAL_ERROR, 'Could not delete inactive users', '', __LINE__, __FILE__, $sql);
}
Müsste so passen.... :grin:
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Ecronika
Mitglied
Beiträge: 6
Registriert: 25.09.2006 17:25
Wohnort: Hamburg

Beitrag von Ecronika »

Could not delete inactive users

DEBUG MODE

SQL Error : 1064 You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '0) > 86400)' at line 1

0) > 86400)

Line : 54
File : index.php
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Na gut, dann ändern wir das etwas....

Code: Alles auswählen

$akt_zeit = time();
$sql="delete FROM " . USERS_TABLE . " WHERE user_active=0 AND user_id > 2 AND ((" . $akt_zeit-intval(user_regdate) . ") > 86400)";
if ( !($result = $db->sql_query($sql)) )
{
   message_die(GENERAL_ERROR, 'Could not delete inactive users', '', __LINE__, __FILE__, $sql);
}
Geht's?
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Ecronika
Mitglied
Beiträge: 6
Registriert: 25.09.2006 17:25
Wohnort: Hamburg

Beitrag von Ecronika »

Erzeugt den selben Fehler mal abgesehn von der Zeilenzahl (nun 55)...
Vatex
Mitglied
Beiträge: 99
Registriert: 03.09.2006 17:30

Beitrag von Vatex »

Code: Alles auswählen

$akt_zeit = time();
$sql="DELETE FROM " . USERS_TABLE . " WHERE user_active=0 AND user_id > 2 AND user_regdate < " . ($akt_zeit - 86400);
if ( !($result = $db->sql_query($sql)) )
{
   message_die(GENERAL_ERROR, 'Could not delete inactive users', '', __LINE__, __FILE__, $sql);
}
kleiner Drache
Mitglied
Beiträge: 2
Registriert: 27.09.2006 11:18

Beitrag von kleiner Drache »

Hi ich hätte ne ähnliche Frage wie Ecronika.
Und zwar, gibt es etwas das Benutzer automatisch löscht, wenn sie z.b. ein halbes jahr nicht mehr angemeldet waren.
Valerie Raghnall
Mitglied
Beiträge: 3907
Registriert: 17.07.2002 14:03
Wohnort: Graz

Beitrag von Valerie Raghnall »

Hi,

also automatik kann ich dir nicht sagen, aber such mal den DB-Maintainance Mod... der kann das und noch viel mehr auf Knopfdruck.
A Bus Station is where buses stop. A Train Station is where trains stop. On my desk, there is a Work Station.
kleiner Drache
Mitglied
Beiträge: 2
Registriert: 27.09.2006 11:18

Beitrag von kleiner Drache »

Danke auf knopfdruck reicht mir auch :grin:
Ecronika
Mitglied
Beiträge: 6
Registriert: 25.09.2006 17:25
Wohnort: Hamburg

Beitrag von Ecronika »

Vatex hat geschrieben:

Code: Alles auswählen

$akt_zeit = time();
$sql="DELETE FROM " . USERS_TABLE . " WHERE user_active=0 AND user_id > 2 AND user_regdate < " . ($akt_zeit - 86400);
if ( !($result = $db->sql_query($sql)) )
{
   message_die(GENERAL_ERROR, 'Could not delete inactive users', '', __LINE__, __FILE__, $sql);
}
Das hat funktioniert - Danke.
Antworten

Zurück zu „phpBB 2.0: Administration, Benutzung und Betrieb“