Voila mon code de compteur.
J'ai un problème. Quand la table est vide l'enregistrement de l'ip se fait bien, mais dès que la table n'est pas vide et que la date change il ne veut pas enregistrer l'adresse.
Pourtant il m'affiche bien l'ip que j'ai mit pour voir (POINT A)
Quand la date est bien la même il affiche bien yes ! (POINT B)
// 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"; // Définition des variables d'affichage $color = "#FF0000"; // 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 impossible"); // On effectue une recherche pour savoir si l'IP est déjà enregistrée. $ip = false; $query = mysql_query("SELECT * FROM ".$table." WHERE date='".$date."'"); while ($donnees = mysql_fetch_array($query)){ if ($donnees['ip'] == $_SERVER['REMOTE_ADDR'] AND $donnees['date'] == $date){ $ip = true; echo 'yes !'; //[color=#FB0803]POINT B[/color] } } // On vérifie l'ip if($ip == false) { echo $_SERVER['REMOTE_ADDR']; [color=#FB0803]POINT A[/color] // On insère l'ip si elle n'existe pas. $ip1 = $_SERVER['REMOTE_ADDR']; $query = mysql_query("INSERT INTO ".$table."(ip,date) VALUES('".$ip1."','".$date."')"); } // 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 "<div id=\"compteur\"> <b><font color=\"$color\">".$compteur."</font></b> visiteur pour aujourd'hui.<br />"; } else { echo "<div id=\"compteur\"><b><font color=\"$color\">".$compteur."</font></b> visiteurs pour aujourd'hui.<br />"; } // Nombre de visites totales $select2 = Mysql_Query("SELECT ip FROM $table"); $compteur2 = mysql_num_rows($select2); if($compteur2 == '1' OR $compteur2 == '0') { echo "<b><font color=\"$color\">1</font></b> visiteur au total.<br />"; } else { echo "<b><font color=\"$color\">".$compteur2."</font></b> visiteurs au total.<br />"; } //nombre de page vues : $file="compteur.txt"; $fp = fopen($file,"r+"); // 1.On ouvre le fichier en lecture/écriture $nbvisites = fgets($fp,11); // 2.On récupère le nombre dans le fichier $nbvisites++; // 3.On incrémente le nombre de visites(+1) fseek($fp,0); // 4.On se place en début de fichier fputs($fp,$nbvisites); // 5.On écrit dans le fichier le nouveau nb fclose($fp); // 6.On ferme le fichie if($nbvisites == '1' OR $nbvisites == '0') { echo "<b><font color=\"$color\">".$nbvisites."</font></b> page vue.</div>"; } else { echo "<b><font color=\"$color\">".$nbvisites."</font></b> pages vues.</div>"; } // On ferme la connection avec MySQL. mysql_close();
Si vous trouvez le problème, merci ^^
Hors ligne
Posté le 07-01-2009 10:39:14
Je regarderai sa en profondeur se week-end.
Hors ligne
Posté le 07-01-2009 19:52:21
J'ai beau regarder je ne vois pas l'erreur je mis mettre a fond se week^^, car sa m'énerve -_-' .^^
Hors ligne
Posté le 08-01-2009 17:22:52
Au lieu de faire de IF lors de la vérification mais un ELSE, lol je sais pas si sa changera mais bon -_-' .
Hors ligne
Posté le 08-01-2009 17:24:42
Lol, sa dépend de son humeur ^^
Hors ligne
Posté le 10-01-2009 12:08:21
En quelque sorte xD
c'est celui qui est sur mon site : www.endive-creative.prog.fr ^^
Je pense que le problème venait de la bdd plus que de mon code.
Hors ligne
Posté le 10-01-2009 13:27:00
Ok, cool, j'ai vus que tu as mis des image .
Hors ligne
Posté le 10-01-2009 16:43:14
Ouais, j'ai fait une mise à jours cette après midi, j'ai amélioré quelque truc dans le design, j'ai rajouté des éléments de contenu.
Hors ligne
Posté le 10-01-2009 16:54:51
J'adore le système de navigation pour les images de la galerie c super stylé .
Hors ligne
Posté le 17-01-2009 22:43:50