//ZService-PHPonline.php\\
//ZS webmaster\\
//www.zoneservice.t2u.com\\
<?php
$serveur = "LocalHost";
$db_login = "***";
$db_passe = "***";
$database = "***";
$timeoutsecondes = 300;
// Le nombre de secondes pendant lesquelles le script considère que
// votre utilisateur est en ligne.
// NE PAS TOUCHER EN DESSOUS DE CETTE LIGNE
$timestamp = time(); // on prend l'heure du moment
$timeout = $timestamp-$timeoutsecondes;
// à partir de quand les enregistrement ne sont plus valides
mysql_connect($serveur, $db_login, $db_passe);
$insert = mysql_db_query($database, "INSERT INTO online VALUES
('$timestamp','$REMOTE_ADDR','$PHP_SELF')");
// On fait l'insertion dans la base de l'heure actuelle <b>$timestamp</b>
// puis de l'adresse IP du visiteur <b>$REMOTE_ADDR</b> et enfin de
// la page où est le visiteur <b>$PHP_SELF</b>
if(!($insert)) { // l'insertion ne s'est pas faite
print "Utilisateurs en ligne : Problème d'insertion";
}
$delete = mysql_db_query($database, "DELETE FROM online
WHERE timestamp<$timeout");
// on supprime tous les enregistrements périmés.
if(!($delete)) { // problème au nettoyage
print " Utilisateurs en ligne : Problème de nettoyage de la base";
}
$result = mysql_db_query($database, "SELECT DISTINCT ip
FROM online WHERE fichier='$PHP_SELF'");
// On recupère les lignes où les utilisateurs sont
// uniques et sont passés par la page en cours.
if(!($result)) { // Si on n'a un problème à la récupération
print " Utilisateurs en ligne : Problème de recherche dans la base";
}
$nombre = mysql_num_rows($result);
// On compte le nombre de résultats trouvés
mysql_close();
// On ferme la connexion à la base de données.
if($nombre == 1) {
print("<b>$nombre</b> utilisateur\n");
} else {
print("<b>$nombre</b> utilisateurs\n");
}
?>