PHP deconnexion fermeture navigateur [Résolu/Fermé]

Signaler
Messages postés
1
Date d'inscription
mercredi 28 octobre 2009
Statut
Membre
Dernière intervention
28 octobre 2009
-
avion-f16
Messages postés
18360
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
11 janvier 2020
-
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.

1 réponse

Messages postés
18360
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
11 janvier 2020
4124
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';
}