Nbre de connectés - PHP - Programmation
Marsh Posté le 21-09-2003 à 17:04:23
A chaque ouverture de session tu insères un enregistrement dans une BDD.
Ensuite tu regardes combien il y en a qui datent de moins de X minutes.
(purger la BDD des vieux enregistrements de temps en temps)
Marsh Posté le 21-09-2003 à 17:07:30
Ouais ok mais comment je sais que le mec c'est barré de mon site ?
Marsh Posté le 21-09-2003 à 17:09:19
"qui datent de moins de X minutes"
Marsh Posté le 21-09-2003 à 17:10:40
Tu actualises aussi la date de l'enregistrement à chaque fois que le visiteur affiche une page.
Marsh Posté le 21-09-2003 à 17:12:52
Ah ok, j'y avais pas pensé, je vais voir ce que je peux faire merci.
Marsh Posté le 21-09-2003 à 17:44:24
Nerocro a écrit : Ouais ok mais comment je sais que le mec c'est barré de mon site ? |
Justement comment veux tu le savoir, en moyenne les internautes reste 5min sur un site, une fois la page chargee il n'y a plus aucune liaison entre l'internaute et le server web, donc c'est juste une estimation
Marsh Posté le 21-09-2003 à 20:56:05
_Maximus_ a écrit : |
+1
Moi aussi le sujet m'interresse bien, car j'ai toujours pas trouvé la solution pour ce truc
Marsh Posté le 21-09-2003 à 23:59:10
Taz a écrit : tu comptes le nombre de httpd |
cad?
Compter quelque chose en rapport avec les variables serveurs?
Marsh Posté le 22-09-2003 à 09:34:49
La solution est de se fier aux stat
Lorsqu'un internaute se connecte au site, tu enregistres son IP dans une table avec la date et l'heure de connexion si son IP n'existe pas encore dans la table.
A chaque fois que la page est rafraichie :
En debut de script tu effaces tous les enregistrements qui ont une date et heure < que la date actuelle - 5 minutes.
Ensuite tu comptes le nombre d'enregistrements de la table et ce nombre est le nombre de connectés à afficher.
Si le mec reste connecté plus de 5 minutes ce n'est pas un probleme son IP sera ré-enregistrée dans la DB pour 5 minutes de plus... pour autant qu'il rafraichisse une page de tps en tps si il reste planté pendant 2H devant la page évidement il n'y a aucun moyen de le savoir.
Il est clair que ca ne te donneras pas exactement le nombre de "connectés", en l'instant présent, mais c'est une méthode qui s'en rapproche le plus.
Marsh Posté le 22-09-2003 à 09:39:01
Taz a écrit : tu comptes le nombre de httpd |
Il peut y en avoir plusieur pour 1 internaute non?
Marsh Posté le 22-09-2003 à 11:26:42
_Maximus_ a écrit : La solution est de se fier aux stat |
L'adresse IP n'est pas fiable. Utilise plutôt un ID de session.
Certains visiteurs qui sont dans des grosses sociétés change d'ip assez souvent parce-que le trafic passe par plusieurs routeurs qui se répartissent la charge. J'ai eu l'exemple avec de visiteurs de la SNCF...
Marsh Posté le 22-09-2003 à 14:15:20
Mara's dad a écrit : |
Oui c'est vrai mais faut avouer que ca represente 0.1% des cas
Mais oui, pq pas avec l'id de session. Ca reste le meme principe de toute facon. Tu as raison
Marsh Posté le 22-09-2003 à 14:28:12
_Maximus_ a écrit : |
0.1% des cas, c'est pas grand chose, et pour des stats, c'est pas bien important, tu as raison de le souligner.
J'ai remarqué ce problème en essayant de "sécuriser" mes sessions. Je voulais éviter le vol/usurpation d'id de session, et donc je vérifiais la correspondance entre id de session et IP. En cas de non correspondance, le visiteur était renvoyé sur la page d'accueil du site, et je reçevais une alerte pour "tentative de vol d'id de session". Quand je me suis rendu compte que ce n'était pas de l'usurpation, il m'a fallu laisser tomber cette vérification, parce là pour le coup, 0.001% c'est trop
Marsh Posté le 21-09-2003 à 16:51:44
J'arrive pas à afficher le nombre de connecté sur mon site, si vous pouviez m'aider.
Je sais que c'est avec les sessions mais je voudrais plus de détails.
Merci
---------------
Mieux vaut partir sur des rires de qualités que sur un silence de quantité.