Modification 2017 : De nos jours, votre meilleur pari est d'utiliser des websockets pour suivre la présence sur une page/un site.
Vous ne pouvez pas détecter lorsqu'un utilisateur ferme son navigateur ou navigue hors de votre site avec PHP, et les techniques JavaScript pour le faire sont si loin d'être garanties qu'elles sont inutiles.
Au lieu de cela, votre meilleur pari est le plus susceptible de stocker la dernière heure d'activité de chaque utilisateur.
- Créez une colonne dans votre tableau utilisateur sur le modèle "last_activity".
- Chaque fois qu'un utilisateur charge une page, mettez à jour son last_activity à l'heure actuelle.
- Pour obtenir une liste des personnes en ligne, il vous suffit d'interroger la base de données pour rechercher les utilisateurs dont les valeurs de last_activity sont postérieures à 10/20/n'importe quelles minutes.