Compteur de visites

Résolu/Fermé
laurents - 13 juil. 2008 à 10:17
laurentsc Messages postés 13 Date d'inscription dimanche 13 juillet 2008 Statut Membre Dernière intervention 27 décembre 2017 - 13 juil. 2008 à 23:17
Bonjour,

je souhaiterais placer sur mon site un compteur qui compte le nb d'accès au site (pas l'accès à la page d'accueil, par exemple, car si on explore le site, on revient svt à cette page ; pourtant, on a accédé qu'une seule fois au site). Et de plus, si possible, je voudrais pouvoir initialiser la valeur du compteur. Ca peut être en html ou en php (et avec éventuellement une bdd Mysql). Peut-on me dire ou trouver ça ou m'en donner le code ? Merci de l'aide.
A voir également:

7 réponses

vignemail1 Messages postés 1246 Date d'inscription vendredi 8 octobre 2004 Statut Contributeur Dernière intervention 13 septembre 2019 259
13 juil. 2008 à 10:25
Pour chaque nouvelle session_id(), faire un UPDATE visites SET compteur = compteur +1; par exemple
La session_id() étant valide pour la durée de la navigation, alors le compteur sera incrémenté qu'une seule fois
0
laurentsc Messages postés 13 Date d'inscription dimanche 13 juillet 2008 Statut Membre Dernière intervention 27 décembre 2017
13 juil. 2008 à 10:30
Je vois qu'il y a une réponse, mais elle est incomplète : peux-tu la mettre en entier ?
0
vignemail1 Messages postés 1246 Date d'inscription vendredi 8 octobre 2004 Statut Contributeur Dernière intervention 13 septembre 2019 259
13 juil. 2008 à 10:58
Le principe est donné en entier, je vais pas faire ton boulot quand même. C'est du PHP, utilise les sessions et une base de donnée.
0
laurentsc Messages postés 13 Date d'inscription dimanche 13 juillet 2008 Statut Membre Dernière intervention 27 décembre 2017
13 juil. 2008 à 11:19
OK, je n'avais pas compris : je mettrai le n° d'id ds une variable de session et s'il change, j'incrémenterai le compteur. Mais la 1e fois, j'imagine qu'il n'y aura rien ds la variable de session ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
vignemail1 Messages postés 1246 Date d'inscription vendredi 8 octobre 2004 Statut Contributeur Dernière intervention 13 septembre 2019 259
13 juil. 2008 à 11:33
en considérant la table sessions avec comme champs seulement sid VARCHAR(20) et la table visites avec comme chaps seulement compteur INT
<?php
session_start();
$sid = session_id();

$result = mysql_query("SELECT sid FROM sessions WHERE sid=$sid;");
if (mysql_num_rows($result)==0){
//sid jamais vus donc nouveau visiteur

mysql_query("INSERT INTO sessions VALUES($sid);");
mysql_query("UPDATE visites SET compteur = compteur +1;");
}
$result = mysql_query("SELECT compteur FROM visites;");
while($row = mysql_fecth_array($result, MYSQL_ASSOC)){
$compteur = $row['compteur'];
}
?>
$compteur contient la valeur courant du compteur
0
laurentsc Messages postés 13 Date d'inscription dimanche 13 juillet 2008 Statut Membre Dernière intervention 27 décembre 2017
13 juil. 2008 à 17:53
Je viens de tester le code, mais si je reste sur le site, que je vais sur une autre page et que je reviens, le compteur est incrémenté (et même si je fais un "actualiser") ; donc, ça ne va pas... (et heureusement que je connais le php car au début, ça ne marchait pas du tout).
0
laurentsc Messages postés 13 Date d'inscription dimanche 13 juillet 2008 Statut Membre Dernière intervention 27 décembre 2017 > laurentsc Messages postés 13 Date d'inscription dimanche 13 juillet 2008 Statut Membre Dernière intervention 27 décembre 2017
13 juil. 2008 à 18:21
J'ai la joie d'annoncer que je l'ai fait marcher : au lieu de mettre le "id" ds une table, je le mets ds une variable de session (d'ailleurs, c'était mon idée avant que tu ne m'envoies le code) (donc, je n'utilise pas de table "visites"). Cela dit, je ne m'explique pas pourquoi ta solution ne marche pas.
0
laurentsc Messages postés 13 Date d'inscription dimanche 13 juillet 2008 Statut Membre Dernière intervention 27 décembre 2017 > laurentsc Messages postés 13 Date d'inscription dimanche 13 juillet 2008 Statut Membre Dernière intervention 27 décembre 2017
13 juil. 2008 à 22:05
J'ai fini par repenser à ce qui n'allait pas et j'ai fait marcher ton code : il fallait passer la requête SQL qui compare le champ "sid" à la variable "$sid" ds un "stringslahes" : heureusement que je connais le PHP...
0
laurentsc Messages postés 13 Date d'inscription dimanche 13 juillet 2008 Statut Membre Dernière intervention 27 décembre 2017 > laurentsc Messages postés 13 Date d'inscription dimanche 13 juillet 2008 Statut Membre Dernière intervention 27 décembre 2017
13 juil. 2008 à 23:17
Fausse piste ; il n'y a que ma méthode qui marche...
0
laurentsc Messages postés 13 Date d'inscription dimanche 13 juillet 2008 Statut Membre Dernière intervention 27 décembre 2017
13 juil. 2008 à 11:46
Merci,

je m'attendais à le faire moi-même mais ce n'est pas la peine. Je le testerai cet AM.
0
si tes page son en HTML rien de plus simple tu va sur abccompteur et tu crer ton compteur puis tu l'insère dans ta page HTML et le tour et jouer rien de plus simple de plus le compteur ne compte seulement les adresse IP donc tu peut cliké 130 fois sur la page d'acceuil un seul décompte sera fait voila
0