Jak Chirak
Membre
Bonjour à tous et à tous, aujourd’hui je vous présente un petit code en PHP qui vous permet de faire un compteur de connectés via IP sur votre site web.
I - Programmation de votre base de donnée
Faites une table à deux entrées, comme ceci :
II - Script PHP
Placez se script sur votre site web :
Une fois ce code placé sur votre site web, cela vous affichera le nombre de connectés par IP.
Avantage : Une IP = 1 connecté donc même si une personne ouvre 10 fois la même page, si il ne change pas d'IP le compteur restera toujours à 1 connecté.
Source :
Bonne journée,
Spy.exe
I - Programmation de votre base de donnée
Faites une table à deux entrées, comme ceci :

II - Script PHP
Placez se script sur votre site web :
Code:
<?php
// Connexion à MySQL
mysql_connect("Localhost", "NOM_DE_LA_DB", "MOT_DE_PASSE");
mysql_select_db("NOM_DE_LA_DB");
// -------
// ÉTAPE 1 : on vérifie si l'IP se trouve déjà dans la table.
// Pour faire ça, on n'a qu'à compter le nombre d'entrées dont le champ "ip" est l'adresse IP du visiteur.
$retour = mysql_query('SELECT COUNT(*) AS nbre_entrees FROM connectes WHERE ip=\'' . $_SERVER['REMOTE_ADDR'] . '\'');
$donnees = mysql_fetch_array($retour);
if ($donnees['nbre_entrees'] == 0) // L'IP ne se trouve pas dans la table, on va l'ajouter.
{
mysql_query('INSERT INTO connectes VALUES(\'' . $_SERVER['REMOTE_ADDR'] . '\', ' . time() . ')');
}
else // L'IP se trouve déjà dans la table, on met juste à jour le timestamp.
{
mysql_query('UPDATE connectes SET timestamp=' . time() . ' WHERE ip=\'' . $_SERVER['REMOTE_ADDR'] . '\'');
}
// -------
// ÉTAPE 2 : on supprime toutes les entrées dont le timestamp est plus vieux que 5 minutes.
// On stocke dans une variable le timestamp qu'il était il y a 5 minutes :
$timestamp_5min = time() - (60 * 5); // 60 * 5 = nombre de secondes écoulées en 5 minutes
mysql_query('DELETE FROM connectes WHERE timestamp < ' . $timestamp_5min);
// -------
// ÉTAPE 3 : on compte le nombre d'IP stockées dans la table. C'est le nombre de visiteurs connectés.
$retour = mysql_query('SELECT COUNT(*) AS nbre_entrees FROM connectes');
$donnees = mysql_fetch_array($retour);
// Nombre de co's
echo '<p>Il y a actuellement ' . $donnees['nbre_entrees'] . ' visiteurs.</p>';
?>
Une fois ce code placé sur votre site web, cela vous affichera le nombre de connectés par IP.
Avantage : Une IP = 1 connecté donc même si une personne ouvre 10 fois la même page, si il ne change pas d'IP le compteur restera toujours à 1 connecté.
Source :
Vous devez être inscrit pour voir les liens ! Inscrivez-vous ou connectez-vous ici.
Bonne journée,
Spy.exe