Bonjour,
Je place cette question dans "PHP" même si au final il y a du javascript et un peu de MySQL dedans...
J'ai une plateforme où j'aimerais avoir le temps de présence des personnes connectées, pour chaque connexion faites.
J'ai fait pour ça un compteur javascript qui:
Dans le principe ça fonctionne sans problème.
Ma question se trouve au niveau de "l'efficacité" de la chose. A savoir que ça fait faire un nombre de requêtes qui peut rapidement monter si j'ai plusieurs personnes connectées en même temps.
Bref, est-ce qu'il faut procéder de la sorte, ou bien y'a-t-il des méthodes bien meilleurs?
Merci!
Salut,
Je n'ai jamais vraiment utilisé les sockets, mais si mes souvenirs sont bons, ca devrait correspondre à ton besoin.
Le système de socket te permet de savoir plusieurs choses, donc la "connexion" et "déconnexion".
A chaque connexion (à chaque chargement de page par exemple), tu peux écouter l'event et mettre à jour ton temps en base.
A la disconnection, tu peux mettre à jour aussi le champs.
Je réfléchis en même temps que j'écris, mais je pense que cette idée te permettrais une plus grande flexibilité.
(Donc il te faut gérer un système de socket client / serveur)
Bonjour,
Merci, je vais regarder a de plus près.
J'ai testé avec du javascript toujours mais avec "onload" et "onunload".
On onload démarre le compteur de temps, et lors d'un unload une requête ajax est lancée avec enregistrement du compteur à ce moment-là. Ca marche pas mal mais on est dépendant du javascript et donc du navigateur/choix du visiteur.
Et en même temps mon site utilise plusieurs composants javascript donc s'il décide de désactiver ça plus grand chose ne fonctionnera... :)
Bref, direction des sockets pour voir tout ça. :)