Compteur de visiteurs uniques quotidien avec mysql.

Description

Comme promis, j'ai améliorer le précédent script qui n'était qu'un simple compteur en PHP avec fichier texte externe. En effet, ce nouveau compteur, qui fonctionne avec une table SQL de MySQL, compte les visiteurs uniques quotidiens d'un site web en relevant l'ip du visiteur et en la stockant dans la table. C'est donc un script très utiles pour compter avec une bonne précision, le nombre de visiteurs uniques qui fréquentent en une journée votre site.

De plus, dans le ficier compteur.php du zip, vous pouvez personnaliser l'affichage du compteur en modifiant les variables de police, taille et couleur.

Pour faire fonctionner ce script dans vos pages, faites un appel à include dans vos pages PHP :

<? include 'chemin/compteur.php'; ?>

Chemin : chemin d'accès au script dans votre FTP.

Source / Exemple :


///////// TABLE SQL //////////////
------------------------------------

    CREATE TABLE compteur
    (
    ip CHAR(25) NOT NULL UNIQUE PRIMARY KEY,
    date CHAR(10) NOT NULL,
    );

///////////////////////////////////

<?

// Définition des variables d'accès aux données.

$host = "Votre Hôte"; // Hôte : ex : localhost
$login = "Votre Login"; // Login d'accès à la base
$passe = "Votre Password"; // Password
$base = "Nom de votre Base"; // Base de données
$table = "compteur";

// On récupère la date du jour.

$now_Y = date("Y");
$now_m = date("m");
$now_d = date("d");
$date  = "$now_d-$now_m-$now_Y";

// On effectue une connection à la table

@MYSQL_CONNECT($host,$login,$passe) or die ("<font face=arial size=2><b>Impossible de tenter une connection !</b>.");
@MYSQL_SELECT_DB("$base") or die ("Connexion à la base $base impossible");

// On efface les IP qui sont "périmées" (date actuelle différente des dates précédentes)

$delete = "DELETE * FROM $table WHERE date != '$date'";
$query = "Mysql_Query($delete)";

// On effectue une recherche pour savoir si l'IP est déjà enregistrée.

$query = Mysql_Query("SELECT ip FROM $table WHERE date='$date'");

// On vérifie l'ip

if($ip != '$REMOTE_ADDR')
{

// On insère l'ip si elle n'existe pas.

$insert = "INSERT INTO $table (ip,date) VALUES('$REMOTE_ADDR','$date')";
$query = Mysql_Query($insert);

}

// On récupère la valeur du compteur

$select = Mysql_Query("SELECT ip FROM $table WHERE date = '$date'");
$compteur = mysql_num_rows($select);

if($compteur == '1' OR $compteur == '0')
{
echo "1 Visiteur.";
}
else
{
echo $compteur." Visiteurs.";
}

// On ferme la connection avec MySQL

mysql_close();

?>

Conclusion :


Attention :

Pensez bien à changer le nom de la table dans la structure de la table (CREATE TABLE nom_de_la_table) si vous avez modifié ce nom dans la variables $table du fichier compteur.php

N'hésitez pas à poster vos commentaires sur cette source et à vous rendre sur notre site à l'adresse suivante :

http://www.webmaster-debutant.com

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.