Compteur présence

jimmypage64 Messages postés 164 Date d'inscription samedi 16 octobre 2004 Statut Membre Dernière intervention 21 septembre 2010 - 5 mai 2006 à 15:33
platon179 Messages postés 237 Date d'inscription lundi 20 mai 2002 Statut Membre Dernière intervention 22 juillet 2011 - 5 mai 2006 à 20:23
Bonjour !!!
Je voudrais faire un compteur pour recenser les personnes présentes sur le site a un moment donné ainsi qu'afficher leur statut (si ce sont des membres, des invités, des admins,..)
Quelqu'un pourrait m'expliquer le fonctionnement en quelques phrases s'il vous plait ?
Je pensais qu'il faudrais faire avec des variables contenues dans des sessions pour l'identité du visiteur puis incrémenter ma base de un a chaque nouvelle session.
Est-ce qu'il n'y a que ca a faire ou est-ce que j'oublie des choses ?

Merki beaucul...

[8)]Zoso

3 réponses

platon179 Messages postés 237 Date d'inscription lundi 20 mai 2002 Statut Membre Dernière intervention 22 juillet 2011 2
5 mai 2006 à 19:38
Salut,
Bien sûr, le principe est pas si compliqué... Il te faut une table dans ta base de données, comprenant 3 champs... IP, dernier_signe_de_vie, statut

Lors de l'arrivée d'un visiteur sur le site, tu vois si il est loggué ou pas... Et tu ajoutes les données en conséquence.. Allez, c'est mon jour de bonté, je te file un morceau de mon code ;)

$limite = time() + 180; // timeout de 3 minutes
$ip = $_SERVER['REMOTE_ADDR']; // Obtenir l'IP


$DB_Query = mysql_query("DELETE FROM online WHERE ip='$ip' OR last_access<".time(), $DB_Connect);
$DB_Query = mysql_query("DELETE FROM online WHERE uname='$username'", $DB_Connect);


if($loggue)
$DB_Query = mysql_query("INSERT INTO online VALUES('$ip', '$limite', '$username')", $DB_Connect);
else
$DB_Query = mysql_query("INSERT INTO online VALUES('$ip', '$limite', 'visiteur')", $DB_Connect);

Enjoy ++
FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
5 mai 2006 à 20:20
"DELETE FROM online WHERE ip='$ip' OR last_access < DATE_SUB(last_access, INTERVAL 3 MINUTE)"

Ca marche aussi en SQL :)
platon179 Messages postés 237 Date d'inscription lundi 20 mai 2002 Statut Membre Dernière intervention 22 juillet 2011 2
5 mai 2006 à 20:23
Oui, ca marche aussi en SQL, effectivement, et c'est même plus rapide...
/me va modifier son code...

;)
Rejoignez-nous