Salut à tous !
Je suis bloquer car j'aimerais savoir comment on peut savoir si un membre est déconnecter.
Car en fait il faut que quand le membres se déconnecte ou quitte le site j'enregistre le timestamp.(il faut passer dans logout.php)
Le truc c'est que j'ai fait une expiration de session.

<?php
if(!isset($_SESSION'expires']))
    $_SESSION'expires'] = time();
if($_SESSION'expires'] + 600 < time()) {
    unset($_SESSION'expires']);
header("Location: logout.php");
}
else
    $_SESSION'expires'] = time();
?>

Mais le truc c'est que si il quitte le site avant l'expiration de session ben il passe pas par le header location.

J'ai tester avec du js avec le onbeforeunload() pour quand il quitte la page je le redirige vers logout.php mais cela marche pas pour chrome et Opera .

Donc je bloque j'arrive pas a voir comment faire.
Quelqu'un aurait une solution ?!

Merci ;)

2 réponses


Grafikart
Réponse acceptée

Tu ne peux pas déclencher un truc au moment ou on ferme le navigateur. Le seul moyen de faire ce que tu veux c'est de sauvegarder sur chaque page (ou dans un interval donné) la connexion d'un utilisateur. Comme ça tu sais à peu près quand il était en ligne.

workfel
Auteur

Merci , du coup à chaque page j'enregistre le timestamp et du coup à la connexion le dernier timestamp c'est la déconnexion du membres ;)