Compteur de visite et de connexion


Description

Ce compteur est très simple et permet d'identifier facilement les utilisateurs par leur adresse ip.
Il affiche l'heure et la date, l'adresse ip de l'utilisateur, le nombre de visiteurs total, le nombre de visiteurs par jour, et le nombre de visiteurs connectés.
Il dépend de 2 tables sql qui se vident automatiquement tous les jours pour éviter une surcharge de la BDD ainsi qu'un nombre d'adresses ip relevé trop important.
Téléchargez le zip si vous souhaitez l'avoir en entier.

petit test ici => http://p3drix.free.fr/count/

Source / Exemple :


.: Création sql :.

create table count_adr (
id int(11) NOT NULL auto_increment,
date text,
date2 text,
adr_ip text,
PRIMARY KEY (id), KEY id (id), UNIQUE id_2 (id) );

create table count_global (
id int(11) NOT NULL auto_increment,
count text,
PRIMARY KEY (id), KEY id (id), UNIQUE id_2 (id) );

INSERT INTO count_global(count) VALUES('0');

____________________________________________________________________

.: Fichier conf.php3 :.

<?

$serveur=" ";
$user=" ";
$password=" ";
$base=" ";

?>

____________________________________________________________________

.: Cette page sera renommée en ce que vous voulez (vous pouvez vous en servir en include) :.

<table border="0" background="fond1.gif" width="197" height="101">
	<tr>
		<td><font size="1" face="verdana"><p align="center">
<?PHP

include 'conf.php3';
$date = date("d/m/Y H:i");
echo $date;
echo "<br>";

$date2 = date("i");
$date = date("d");
$ip = $_SERVER['REMOTE_ADDR'];

echo "Votre ip : ";
echo $ip;
echo "<br><br>";

$connexion = mysql_connect($serveur,$user,$password);
$db = mysql_select_db($base, $connexion);

$sql = "DELETE FROM count_adr WHERE date!='$date'";
$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error());

$sql = "SELECT * FROM count_global";
$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error()); 
while($data = mysql_fetch_array($req)) 
{
$count = $data['count'];
$count = $count+1;
}
$sql = "SELECT * FROM count_adr";
$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error()); 
while($data = mysql_fetch_array($req)) 
{
if ($data['adr_ip'] == $ip)
{
$more = 1;
}
}
if ($more == 0)
{
$sql = "UPDATE count_global SET count='$count'";
mysql_query($sql) 
or die('Erreur SQL !'.$sql.'
'.mysql_error());

$sql = "INSERT INTO count_adr(date,adr_ip,date2)
VALUES('$date','$ip','$date2')";
mysql_query($sql) 
or die('Erreur SQL !'.$sql.'
'.mysql_error());
}
$sql = "SELECT * FROM count_global";
$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error()); 
while($data = mysql_fetch_array($req)) 
{
echo $data['count'];
echo " visiteurs au total<br>";
}
$sql = "SELECT count(adr_ip) AS adresse FROM count_adr WHERE date='$date'";
$query = mysql_query($sql);

$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error()); 
while ($data = mysql_fetch_array($query))
{
echo $data['adresse'];
echo " visiteur(s) aujourd'hui<br>";
}
$sql = "UPDATE count_adr SET date2='$date2' WHERE adr_ip='$ip'";
mysql_query($sql) 
or die('Erreur SQL !'.$sql.'
'.mysql_error());

$sql = "SELECT count(adr_ip) AS adresse FROM count_adr WHERE date2='$date2'";
$query = mysql_query($sql);

$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error()); 
while ($data = mysql_fetch_array($query))
{
echo $data['adresse'];
echo " visiteur(s) connecté(s)";
}

?>
</font></td>
	</tr>
</table>

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.