Créer un compteur d'accès avec JavaScript
man
-
PhP Messages postés 1774 Statut Membre -
PhP Messages postés 1774 Statut Membre -
je voudrais créer un compteur d'accès pour mon site web en utilisant JavaScript. Seulement voila j'y arrive pas.
j'ai créer une fonction de la façon suivante:
dans la partie HEAD
<script language=javascript>
function visiteurs(){
var visiteur
visiteur=visiteur+1
document.write("vous etes le"+visiteur+"visiteur")
}
</script>
dans la partie BODY:
<script language= javascript>
visiteurs();
</script>
au lieu du compteur qui s'incrémente je reçoit NaN
je comprend le sens du message mais je sais comment y remédier
de l'aide je vous en prie.
j'ai créer une fonction de la façon suivante:
dans la partie HEAD
<script language=javascript>
function visiteurs(){
var visiteur
visiteur=visiteur+1
document.write("vous etes le"+visiteur+"visiteur")
}
</script>
dans la partie BODY:
<script language= javascript>
visiteurs();
</script>
au lieu du compteur qui s'incrémente je reçoit NaN
je comprend le sens du message mais je sais comment y remédier
de l'aide je vous en prie.
A voir également:
- Compteur de visite javascript
- Notification visite profil facebook - Guide
- Compteur de contractions - Télécharger - Santé & Bien-être
- Qui visite mon profil instagram - Guide
- Qui visite mon site ✓ - Forum Webmastering
- Telecharger javascript - Télécharger - Langages
1 réponse
Salut Man
NaN signifie "Not a Number" c.à.d la variable en question, ici visiteur, n'est pas un nombre sous-entendu il n'est pas possible de l'employer dans une expression mathématique qlconque.
En fait ce qui pose pb c'est que tu n'as pas initialisé ta variable
visiteur. Elle est "undefined" pour JS.
Et cela provoque une erreur lorsque JS essaie de calculer "visiteur+1"
Si tu remplaces :
var visiteur
par :
var visiteur=0 // visiteur est un nbre maintenant
tu n'auras plus d'erreur de type par contre ton code ne va pas fonctionner comme tu t'y attends ...
Car faire un compteur n'est pas aussi simple ! :(
Je m'explique :
Ton code va TOUJOURS afficher : "Vous êtes le 1 visiteur"
Pourquoi :
Il faut bien comprendre qu'à chaque fois que tu charges ou que tu recharges une page HTML toutes ses variables (aussi bien celles que le navigateur met en place que celles que tu déclares avec JS ) sont perdues et réinitialisées et tout le code JS (hors fonction) est
réexécuté.
Donc ici visiteur va être réinitiliser à zéro puisque cela fait partie du code JS. Ne pas l'initiliser n'y changera rien tu auras simplement ton erreur "NaN" !
Ce qu'il faut c'est trouvé un moyen de sauvegarder la valeur de visiteur entres les différents appels à ta page : hé bien il n'y a pas 36 solutions tu doit l'enregistrer qlque part sur le serveur (et pas chez le client !) , la relire à chaque fois,
l'incrémenter puis la réécrire tjrs sur le serveur bien sûr.
Par cela tu peux :
- l'enregistrer dans un fichier sur le serveur
- l'enregistrer dans un champ si tu utilises une base de données
(c'est ce que je fais avec Php/MySQL)
- faire un lien vers un site qui va gérer pour toi le compteur (je sais pas trop ccm mais ca se fait ...)
Bon courage
@+
Philippe
NaN signifie "Not a Number" c.à.d la variable en question, ici visiteur, n'est pas un nombre sous-entendu il n'est pas possible de l'employer dans une expression mathématique qlconque.
En fait ce qui pose pb c'est que tu n'as pas initialisé ta variable
visiteur. Elle est "undefined" pour JS.
Et cela provoque une erreur lorsque JS essaie de calculer "visiteur+1"
Si tu remplaces :
var visiteur
par :
var visiteur=0 // visiteur est un nbre maintenant
tu n'auras plus d'erreur de type par contre ton code ne va pas fonctionner comme tu t'y attends ...
Car faire un compteur n'est pas aussi simple ! :(
Je m'explique :
Ton code va TOUJOURS afficher : "Vous êtes le 1 visiteur"
Pourquoi :
Il faut bien comprendre qu'à chaque fois que tu charges ou que tu recharges une page HTML toutes ses variables (aussi bien celles que le navigateur met en place que celles que tu déclares avec JS ) sont perdues et réinitialisées et tout le code JS (hors fonction) est
réexécuté.
Donc ici visiteur va être réinitiliser à zéro puisque cela fait partie du code JS. Ne pas l'initiliser n'y changera rien tu auras simplement ton erreur "NaN" !
Ce qu'il faut c'est trouvé un moyen de sauvegarder la valeur de visiteur entres les différents appels à ta page : hé bien il n'y a pas 36 solutions tu doit l'enregistrer qlque part sur le serveur (et pas chez le client !) , la relire à chaque fois,
l'incrémenter puis la réécrire tjrs sur le serveur bien sûr.
Par cela tu peux :
- l'enregistrer dans un fichier sur le serveur
- l'enregistrer dans un champ si tu utilises une base de données
(c'est ce que je fais avec Php/MySQL)
- faire un lien vers un site qui va gérer pour toi le compteur (je sais pas trop ccm mais ca se fait ...)
Bon courage
@+
Philippe