Nun, wenn Nummer 1 keinerlei Meldung bekommen, sondern nur seine Session verlieren soll, ist das kein großes Ding.
Suche in der includes/sessions.php nach
Code: Alles auswählen
// Add the session_key to the userdata array if it is set
darüber füge ein:
Code: Alles auswählen
$sql = "DELETE FROM " . SESSIONS_TABLE . " WHERE session_user_id = " . $userdata['user_id'] . " AND session_id <> '" . $userdata['session_id'] . "'";
if (!($result = $db->sql_query($sql)))
{
message_die('Konnte keine fremden Sessiondaten löschen', '', __LINE__, __FILE__, $sql);
}
if ($db->sql_affectedrows($result))
{
// Es wurde mindestens eine fremde Session gelöscht
$sql = "DELETE FROM " . SESSIONS_KEYS_TABLE . " WHERE user_id = " . $userdata['user_id'];
if (!$db->sql_query($sql))
{
message_die('Konnte Autologinkey nicht löschen', '', __LINE__, __FILE__, $sql);
}
}
Das Snippet macht nichts anderes als alle Sessions löschen, die sich auf einen User beziehen, jedoch eine andere SessionId aufweisen. Sollte dies mindestens 1 Zeile in der Sessions Tabelle gelöscht haben, wird zudem das Autologinkey gelöscht. Ansonsten wäre ein "Login-War", wo sich ständig die neu generierten Autologin-Sessions gegenseitig löschen.
Merke 1: Der Code wurde nicht von mir getestet.
Merke 2: Falls Du Modifikationen wie "Wer war online" verwendest, könnte es passieren, dass die Zahlen dort geringere Werte anzeigen, denn diese Mods arbeiten mit den Sessions des Tages.
Grüße aus der nunmehr 280km Ferne,
Tekin
P.S.: Ich hab damals am Tinsberg gewohnt.
