Compteur de visites en Php
Posté : 20 août 2006, 23:05
Salut
Je suis en train de réaliser un compteur de visites en php mais j'ai un petit problème.
J'ai le message suivant :
Voici maintenant mon script:
Je suis en train de réaliser un compteur de visites en php mais j'ai un petit problème.
J'ai le message suivant :
Les chiffres correspondent à mon adresse ip.You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.88.699' at line 1
Voici maintenant mon script:
<?php
mysql_connect("localhost", "login", "mot_de_passe"); // connexion à MySQL
mysql_select_db("base_de_donnees");
// ETAPE 1 : On verifie si l'IP se trouve dans la table.
$retour = mysql_query('SELECT COUNT(*) AS nbre_entrees FROM compteur WHERE ip= ' . $_SERVER['REMOTE_ADDR']) or die (mysql_error()); // On compte le nombre d'entrées qu'il y a dans le champ "ip".
$donnees = mysql_fetch_array($retour);
if ($donnees['nbre_entrees'] == 0) // Si l'ip ne se trouve pas dans la table, alors on va l'ajouter.
{
mysql_query('INSERT INTO compteur VALUES('. $_SERVER['REMOTE_ADDR']. ',' .time() .')');
}
else // Si l'ip existe déja, on met à jour le timestamp.
{
mysql_query('UPDATE compteur SET timestamp= ' .time() . ' WHERE ip= ' .$_SERVER['REMOTE_ADDR']);
}
//ETAPE 2 : On supprime toutes les entrées dont le timestamp est plus vieux que 5 minutes.
// Si un visiteur n'a pas chargé de nouvelles pages sur le site depuis plus de 5 minutes alors on considère qu'il est parti.
$timestamp_5min = time() - (60 * 5); // 60*5 = nombre de secondes ecoulées en 5 minutes.
mysql_query("DELETE FROM compteur WHERE timestamp < $timestamp_5min");
// ETAPE 3 : On compte le nombre d'entrées dans la table
$count = mysql_query("SELECT COUNT(*) AS nbre_connectes FROM compteur");
$donnees = mysql_fetch_array($count);
?>
<p<Il y a actuellement <?php echo $donnees['nbre_connectes'];?> connectés.</p>
<?php
mysql_close();
?>
Si quelqu'un pouvait m'aider, merci d'avance.