Forums Webou.net - Hébergement gratuit et sans publicités avec PHP/MySQL

Hébergement Webou.net => Tutoriels => Discussion démarrée; par: K@cem le 07 Juillet 2008, 12:02:34



Titre: Un compteur de visiteurs avec record des connectés et leur positions (Mysql)
Posté par: K@cem le 07 Juillet 2008, 12:02:34
Bonjour Weboosters !

Dans ce tutoriel je ne vais pas vous apprendre à créer un compteur mais juste à l'utiliser, parce que créer un compteur n'est pas facile et il me faudra plusieurs pages pour le faire :)
J'ai fais ce choix parce que beaucoup de personnes utilisent des compteurs pris de sites qui affichent leurs pubs sur les sites utilisant leur script  >:(

Voici les fonctionnalités de mon compteur :
  • L'affichage du nombre de personnes connectés sur le site.
  • L'affichage du record des connectés.
  • L'affichage d'un tableau qui liste les personnes connectés et leur position sur le site.
  • Gestion de connexion à mysql

Installation :

Vous devez créer une base de données (si vous l'avez déjà c'est bon), je vous recommande de lire ce tutoriel (http://www.webou.net/communaute/index.php/topic,1186.0.html) si vous ne savez pas comment faire ;)

On aura besoin plus tard des identifiants de l'utilisateur lié à votre base de données et le nom de cette dernière.
Connectez vous au Panel (http://www.webou.net:2082/frontend/x3/index.html), et cliquez sur phpMyAdmin.

Sur la nouvelle page, à gauche, cliquez sur le nom de votre BDD puis cliquez sur SQL dans la fenêtre à droite :

(http://kacem.webou.net/webou/Capturer1.JPG)

Dans le champ de texte entrez ce code :
Attention : Si vous avez déjà une table qui s'appelle compteur dans votre BDD vous devez remplacer dans ce code le mot "compteur" par un autre nom de votre choix !

Code:
CREATE TABLE `compteur` (
  `ip` int(11) NOT NULL,
  `date_derniere_visite` int(11) NOT NULL,
  `position` varchar(200) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

Vous venez de créer une table compteur avec 3 champs : ip, date_derniere_visite et position.

Téléchargez le script ici : http://kacem.webou.net/webou/compteur.zip
Le zip contient un dossier compteur où il y a 2 fichiers : compteur.class.php et record.txt

Ouvrez le fichier compteur.class.php avec n'importe quel éditeur et cherchez ces lignes (les lignes 11 jusqu'à 14) :

Code:
private $user = 'root';
private $password = 'pass';
private $bdd = 'test';
private $table = 'compteur';

Vous devez ensuite remplacer chaque ligne par ces informations :
root : à remplacer par votre nom d'utilisateur de la BDD.
pass : à remplacer par votre mot de passe.
test : le nom de votre base de données.
compteur : le nom de la table que vous avez crée (par défaut compteur sauf si vous avez déjà une table compteur).

Enregistrez le fichier et uploadez tous le dossier compteur dans le répertoire public_html de votre espace ftp chez webou  :)

Utilisation :

L'utilisation de ce script est très facile, 3 lignes suffiront à afficher le nombre de connectés  ;D
Vous devez mettre ce code dans tous les fichiers de votre site où vous voulez que les visiteurs soient comptés :
Attention : vos fichiers doivent porter l'extension .php sinon ça ne marchera pas !

Code:
<?php
require './compteur/compteur.class.php';
$compteur = new Compteur();
$compteur->connexion();
echo 
$compteur->nombreConnectes();
?>

Avertissement : si vous avez déjà ouvert une connexion mysql  sur votre page vous devez supprimer la ligne : $compteur->connexion(); !!

Résultat du code :
Citation
1

Mais vous pouvez simplement personnaliser cette affichage en modifiant la dernière ligne du code, par exemple :

Code:
<?php
require './compteur/compteur.class.php';
$compteur = new Compteur();
$compteur->connexion();
echo 
'<p>Le nombre de connectés : '$compteur->nombreConnectes() .'</p>';
?>

Résultat :
Citation
 Le nombre de connectés : 1

Pour afficher le record du nombre maximal des connectés vous pouvez ajouter cette ligne :

Code:
echo '<p>Record : '. $compteur->checkRecord() .'</p>';

Résultat (chez moi) :
Citation
Record de connectés : 20

Si vous voulez par exemple afficher dans votre espace d'administration la liste des connectés avec leurs positions sur votre site vous devez ajouter cette ligne au code de base :

Code:
echo $compteur->afficherConnectes();

Résultat : un tableau qui affiche l'ip, la date de la dernière visite et la dernière url visité  :)

Le tableau est par défaut moche, mais vous pouvez le personnaliser avec du CSS en l'entourant de balises <div> ;)

Conclusion :

Le code de base est celui là :

Code:
require 'compteur/compteur.class.php';
$compteur = new Compteur();

Si vous n'avez pas ouvert de connexion mysql dans votre page ajoutez cette ligne :

Code:
$compteur->connexion();

Et enfin ajoutez l'une de ces 3 lignes (ou toutes si vous voulez) expliqués plus haut:

Code:
echo 'Le nombre de connectés : '. $compteur->nombreConnectes();
echo '<br />Record de connectés : '. $compteur->checkRecord();
echo '<br />'.$compteur->afficherConnectes();

Ce tutoriel touche à sa fin, j'espère que vous n'utiliserez plus ces compteurs qui sortent plein de pop-up sur votre site  :D

Vous pouvez répondre à ce sujet pour donner vos commentaire et suggestions !

Note :
Dans le début du fichier compteur.class.php j'ai écris ce commentaire :
Citation
Compteur de visiteurs crée par k@cem pour le site webou.net
Ce script est sous licence GPL, pour plus d'informations sur cette licence : http://www.gnu.org/licenses/gpl.html
Si vous avez des suggestions ou des bugs à rapporter veuillez les envoyer par email à kacem AT bouhmadi.fr ou mieux : via la forum de webou.net
Pour nous encourager vous pouvez mettre le lien de webou.net sur votre site, mais rien ne vous oblige à le faire ;o)




Titre: Re: Un compteur de visiteurs avec record des connectés et leur positions sur le site
Posté par: K@cem le 10 Juillet 2008, 00:00:40
S'il y a des problèmes avec les accents dîtes le moi je mettrai à jour le fichier ;)


Titre: Re: Un compteur de visiteurs avec record des connectés et leur positions sur le site
Posté par: nitro007 le 10 Juillet 2008, 04:19:18
Bonjour, OU doit on exactement placé ces code daans nos page ??? merci d'avance  ;)


Titre: Re: Un compteur de visiteurs avec record des connectés et leur positions sur le site
Posté par: Micka le 10 Juillet 2008, 14:46:50
Toutes mes excuses K@cem de pas avoir tester le script, j'ai eu quelques soucis ...

Très beau tutoriel. ;) Merci à toi.


Titre: Re: Un compteur de visiteurs avec record des connectés et leur positions sur le site
Posté par: nitro007 le 10 Juillet 2008, 15:08:33
Tu est un géni K@CEM


Titre: Re: Un compteur de visiteurs avec record des connectés et leur positions sur le site
Posté par: K@cem le 10 Juillet 2008, 22:32:22
@Babounet : pas de problème, j'avais envoyé en même le tutoriel à plusieurs autre membres pour avoir plusieurs avis ;)
@nitro007 : Oui il faut mettre le code dans tes pages
Merci pour vos commentaires ^^


Titre: Re: Un compteur de visiteurs avec record des connectés et leur positions sur le site
Posté par: nitro007 le 10 Juillet 2008, 22:34:43
OU EXActement dans la page merci davance ??


Titre: Re: Un compteur de visiteurs avec record des connectés et leur positions sur le site
Posté par: K@cem le 11 Juillet 2008, 11:20:34
OU EXActement dans la page merci davance ??
Dans l'endroit où tu veux afficher l'information ;)
L'endroit n'as pas d'importance, tu le mets ou tu veux !


Titre: Re: Un compteur de visiteurs avec record des connectés et leur positions sur le site
Posté par: nitro007 le 11 Juillet 2008, 14:25:02
merci ;)


Titre: Re: Un compteur de visiteurs avec record des connectés et leur positions (Mysql)
Posté par: cracmediasforum le 02 Août 2008, 19:16:23
Bonjour !
Je découvre un peu tard ce tutoriel, d'où le retard pour réagir !
Je voudrais savoir que faire pour mettre un compteur sans pop-up et sans qu'il soit visible des visiteurs. Je ne veux pas non plus le nom des visiteurs mais seulement leur nombre par page visitée.
Il existe des compteurs "free" sur internet mais avec cookie(s) et pop-up !
Merci d'avance ! :)
ET SVP pas trop de termes techniques, je ne suis pas programmatrice ! ???


Titre: Re: Un compteur de visiteurs avec record des connectés et leur positions (Mysql)
Posté par: K@cem le 02 Août 2008, 22:50:16
Tu as lu le tutoriel ?
C'est justement ce que fait mon compteur ;)


Titre: Re: Un compteur de visiteurs avec record des connectés et leur positions (Mysql)
Posté par: cracmediasforum le 08 Août 2008, 11:02:36
Hum Hum ....
 ton compteur proposé dans le tutoriel est visible sur le site par tout le monde  administrateurs ET visiteurs, non ? ce que je cherche c'est comment le masquer ? Est-ce que ça dépend de l'endroit où on le place ?
 ??? Merci  :)


Titre: Re: Un compteur de visiteurs avec record des connectés et leur positions (Mysql)
Posté par: K@cem le 08 Août 2008, 14:41:29
Tu peux ne pas afficher le nombre de connectés en remplaçant cette ligne :
Code:
echo $compteur->nombreConnectes();

Par cette ligne :
Code:
$compteur->nombreConnectes();


Titre: Re: Un compteur de visiteurs avec record des connectés et leur positions (Mysql)
Posté par: cracmediasforum le 08 Août 2008, 16:02:51
OUF !
Merci Kacem c'est sympa !
 :D


Titre: Suggestion : encodage utf-8
Posté par: photosmer le 19 Août 2008, 12:32:38
Re bonjour k@cem,

J'ai remarqué que pour éviter l'apparition des caractères suivants :  dans ma page html,
il fallait que j'ajoute dans mes pages html qui contenaient du php, la meta suivante au niveau de l'entete <head> du fichier htm :
principallement utf-8.

  <metahttp-equiv="Content-Type"content="text/html;charset=utf-8">       
 
Si cela peut aider quelqu'un.

Sinon,
Merci beaucoup pour tes conseils et pour ta réactivité ... en tout cas chapeau !!
Parole de Goelec   
:-)

:-)


Titre: Re: Un compteur de visiteurs avec record des connectés et leur positions (Mysql)
Posté par: K@cem le 19 Août 2008, 16:01:38
Salut,
Cette ligne est indispensable dans chaque fichier html, c'est pour ça que je ne l'ai pas précisé ^^
En tous cas merci du conseil ;)
k@cem


Titre: Re: Un compteur de visiteurs avec record des connectés et leur positions (Mysql)
Posté par: joseph2000 le 20 Septembre 2008, 15:17:33
bonjour merci beacoup j arrive a installer le compteur et ca marche mais est est ce que peu voir le nombre de visit de ma page c a d est ce que le compteur s incremente a chaque visite et
 merci beaucoup


Titre: Re: Un compteur de visiteurs avec record des connectés et leur positions (Mysql)
Posté par: K@cem le 20 Septembre 2008, 16:01:31
bonjour merci beacoup j arrive a installer le compteur et ca marche mais est est ce que peu voir le nombre de visit de ma page c a d est ce que le compteur s incremente a chaque visite et
 merci beaucoup
C'est facile à faire, cherche sur google tu trouvera pleins de scripts qui le font ;)
J'ajouterai cette option dans mon script si j'ai le temps (dans quelques semaines !)


Titre: Re: Un compteur de visiteurs avec record des connectés et leur positions (Mysql)
Posté par: Merwyn le 14 Mai 2009, 17:52:10
Bonjour,
Merci pour se script mais j'ai un problème avec un message d'erreur s'affiche :
1 DELETE command denied to user 'm*r**n_M*r**n'@'localhost' for table 'compteur'
(les '*' sont juste pour pas tout dire au cas ou  ;D )


Titre: Re: Un compteur de visiteurs avec record des connectés et leur positions (Mysql)
Posté par: MIkE le 15 Mai 2009, 16:23:47
Bonjour,

As-tu bien ajouté tous les privilièges à ton utilisateur MySQL ?


Titre: Re: Un compteur de visiteurs avec record des connectés et leur positions (Mysql)
Posté par: Nataly le 28 Juillet 2009, 03:49:08
C'était justement ce qui me manquait
Drôle de problème, il s'incremente lors du passage d'un nouveau visiteur sans problème, c'était le problème que j'avais avec mon autre script, sauf que...
l'affichage du chiffre est précédé de 
 ???
j'ai beau fouillé, je ne trouve pas!
j'ai vérifié que ces  proviennent bien du compteur, que ce n'est pas un résidu sur ma page et non, c'est bien à l'ajout du compteur que ça apparaît
Résolu...  
petite recherche sur Google, suffisait de faire un copier/coller du contenu de compteur.class.php vers un autre fichier et d'écraser celui-ci...


mon autre question n'est pas résolu par contre, possible de débuter le compteur à un chiffre déjà existant?
Genre que j'aimerais conserver le nombre de visiteur que j'avais à partir de mon autre hébergement.

Oubliez ça! J'viens d'allumer que c'n'est pas un compteur de visites mais de connectés!
 :D
Hum! Pas ça que je cherchais...

Merci
Nat