PHP deconnexion fermeture navigateur

Résolu/Fermé
lambda35 Messages postés 1 Date d'inscription mercredi 28 octobre 2009 Statut Membre Dernière intervention 28 octobre 2009 - 28 oct. 2009 à 19:52
avion-f16 Messages postés 19246 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 - 28 oct. 2009 à 20:04
Bonjour,

Dans une table SQL j'ai un champ qui doit enregistrer pour chaque membre de mon site s'il est connecté ou s'il est déconnecté.
Pour mettre à jour ce champ lors de la connexion il n'y a pas de probleme.
De même lorsque le membre clique sur le lien "deconnexion" le champ est bien mis à jour (et prend pour valeur "deconnecte").
Le souci c'est que des membres pourraient quitter le site en fermant directement la fenetre, et là je ne vois pas comment mettre le champ à la valeur "deconnecte".
Il existe une solution puisque ça marche sur d'autres sites mais je ne la connais pas.

Merci d'avance pour votre aide et pour le temps que vous m'accordez.
A voir également:

1 réponse

avion-f16 Messages postés 19246 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 4 497
28 oct. 2009 à 20:04
Avec une bonne méthode, ça irai mieux...
Effaces le champ et crées en un nouveau nommé "derniere_connexion" (exemple) en INT.
Ensuite, à chaque fois que le membre charge une page, tu dois mettre à jour ce champ par le timestamp actuel , utilise la fonction time pour le récupérer. Sur la page où tu notes s'il est connecté ou pas, tu récupères le timestamp de sa dernière visites et tu fais une condition :
$diff = $derniere_connexion - time();
if($diff <= 300) { // 300 = 5 min * 60 sec
    echo 'Hors ligne';
} else  {
    echo 'En ligne';
}
0