Letzer Login anzeigen

Christoph Haas

Mitglied
Hallo,

ich stehe mal wieder vor einem Rätsel und weiß nicht genau wie ich es lösen soll.
Ich habe eine Seite in der man sich einloggen kann, oben im Kopf steht dann

Code:
Letztes Login am:

Die Sache hab ich so gelöst:
PHP:
<?php
// main.php
//...
?>

Letztes Login am:
<?php
$abfrage = "SELECT * FROM last_login WHERE id = '1'";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_object($ergebnis))
    {
    echo "$row->date um $row->time";
    }
//...
?>!

Dieses Datum und diese Uhrzeit wird erstellt wenn ich mich über "logout" abmelde.
Das Script sieht wie folgt aus:


PHP:
// logout.php
//...
$aendern = "UPDATE last_login Set date = '$date' WHERE id = '1'";
$update = mysql_query($aendern);
$aendern = "UPDATE last_login Set time = '$time' WHERE id = '1'";
$update = mysql_query($aendern);
//...

Es ist selbstverständlich, das eine Verbindung zu MySQL besteht und die Variablen auch stimmen. Ich meine das Script funktioniert ja auch, nur was mache ich wenn jemand nicht über die logout.php geht, sondern einfach das "X" am Explorer drückt, dann umgeht er ja das Script und es wir kein neues Datum in erstellt und an MySQL übertragen.

kann mir da jemand Rat geben?

LG
Christoph Haas
 
Hallo Christoph,

du kannst ja schon beim einloggen einen eintrag machen, da muss der User auf jeden Fall vorbei. Ich weiß garnicht wie es hier gelöst ist, aber ausloggen tu ich mich nie :)

Gruß
Markus
 
Hallo Markus

danke für deine Antwort, aber wenn ich schon beim einloggen einen Eintrag machen lasse, dann erscheint in der main.php immer das aktuelle Datum ;)

habe schon versucht dieses irgendwie hinzubekommen, aber es funktionierte natürlich wie immer nicht ;)

LG
Christoph
 
stimmt :)

und wenn du zuerst die letzte Zeit in eine $_SESSION schreibst, damit die angezeigt werden kann und danach die neue Zeit erst speicherst?
 
Wenn ein User sich anmeldet, prüfst du ja ob Benutzername und Kennwort ok sind, wenn ja, dann suchst du dir das letzte Datum raus, schreibst die in die Session Variable und dann aktualisierst du die Tabelle.
 
kommt es dann aber nicht zu einem Fehler wenn ich bei der logout.php das

PHP:
<?php
session_destroy(); 
?>
reinschreibe!?

Oder bin ich jetzt falsch?:confused:
 
Am besten testen :D

Ne, warum sollte es einen Fehler geben? Das bedeutet doch nur das du nach dem ausloggen die Session-Variablen löschst.

Vielleicht kann man auch was ergoogeln bez. dem Gültigkeitszeitraum von Sessions und damit die Aktualisierung in der Tabelle regeln. Aber so auf Anhieb hab ich nichts gefunden.
 
Ich muss das morgen dann mal auf der Arbeit ausprobieren, jetzt fehlt mir der Schwung um noch groß was zu machen.

Falls ich was gefunden habe, was funktioniert poste ich dieses :)

LG und Gut Nacht ;)
Christoph
 
Ich hätte eine Idee..
und zwar speicherst du immer 2 loginzeiten ab..
beim login ersetzt du dann immer die ältere der beiden mit der neuen..
Die neue dann älter zeit ist die letzte Loginzeit ;)
 
Zurück