Hilfe bei Logout

du nimmst den aktuellen timestamp und rechnest ihn plus 180 ( weil eine 1 Minute hat 60 Sekunden, und weil du 3 Minuten haben möchtest 3*60 = 180)
 
den timestamp schreibe ich in folgendem format in die DB z.B. 18:15:00
und lesen diesen ja dann zu überprüfung aus.

kann man irgendwie mit diesem format auch rechnen

gruß nano
 
Sinnvoll wäre es du schreibst wirklich nur den Timestamp (time()) in die DB, damit kannst du besser Rechnen.

Einfach so:
PHP:
$check = 60 * 3;

$now = time();

$diff = $now - $aktiv_stamp;


if($diff > $check) {
   ... setze login_stamp auf 0 ...
}
 
Sinnvoll wäre es du schreibst wirklich nur den Timestamp (time()) in die DB, damit kannst du besser Rechnen.

Einfach so:
PHP:
$check = 60 * 3;

$now = time();

$diff = $now - $aktiv_stamp;


if($diff > $check) {
   ... setze login_stamp auf 0 ...
}

Ich würde einfach schon den Timestamp nehmen der die 3 Minuten drauf hat, und dann kannste ihn mit den aktuellen vergleichen.
 
NanoNuna ?

Hast es jetz oder gibts noch offene Fragen?
Wenn alles klappt bitte Thema als "Erledigt" kennzeichnen... ;)
 
Mein Skript fängt an zu streiken... Zumindestens zu stänkern...
Fatal error: Cannot redeclare dologout() (previously declared in /usr/export/www/vhosts/funnetwork/hosting/gabriel86/heavenly-hell.osna/admin/logout.php:6) in /usr/export/www/vhosts/funnetwork/hosting/gabriel86/heavenly-hell.osna/admin/logout.php on line 3
Sagt er mir...
Code:
<?php
// loggt einen User aus, ..
function doLogout() 
{ 
// .. indem das Cookie und .. 
if(isset($_COOKIE['Autologin'])) 
setcookie("Autologin", "", time()-60*60); 
// .. die Session ID aus der Datenbank gelöscht werden 
$sql = "UPDATE 
User 
SET 
SessionID = NULL, 
Autologin = NULL, 
IP = NULL 

WHERE 
ID = '".$_SESSION['UserID']."' 
"; 
mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error()); 
} 

// User ausloggen 
doLogout(); 
// $_SESSION leeren 
$_SESSION = array(); 
// Session löschen 
session_destroy(); 
echo 'Sie wurden erfolgreich ausgeloggt.<br>'."\n".'Auf Wiedersehen!<meta http-equiv type="refresh" content="1;URL='.$_SERVER['PHP_SELF'].'?page=start">'."\n";
?>
Das is der Skript... Also ich seh da eigentlich keinen Fehler... Ihr etwa?
 
Kann es sein, daß Du die Funktion genau wie eine andere genannt oder 2x mit include() versucht hast einzubinden?

Fehlermeldungen:
Fatal error: Cannot redeclare xxx() (previously declared in E:\config.inc.php:46) in E:\kommentare.inc.php on line 5

Ursache:
Es wurde versucht einer Funktion den gleichen Namen wie einer anderen zu geben.

Wenn es sich um eine Funktion handelt die nur versehentlich zweimal includet wurde, sollte man statt include() -> inlcude_once() verwenden. inlude_once verhindert das mehrfache includen einer Datei.

Sollte es zufällig zwei Funktionen mit dem gleichen Namen geben, muss eine von beiden umbenannt werden.
 
[BRAINSTORM]
Wäre es nicht vielleicht möglich, dass man hier mit AJAX arbeitet und ne kleine Javascript-Funktion schreibt, die on self.close() noch ein PHP-Script auf dem Server ausführt? Habs nicht getestet und auch mich auch noch nicht wirklich damit verfasst. Rein konzeptionell ist es aber ein Ansatz, den ich ausprobieren würde
[/BRAINSTORM]
 
Zurück