Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

COMPTEUR DE VISITES AVEC IMAGE PNG


Information sur la source

Catégorie :Divers Classé sous : compteur, nombre, visites, page, vues Niveau : Débutant Date de création : 03/09/2007 Date de mise à jour : 20/09/2007 08:37:54 Vu / téléchargé: 10 743 / 500

Note :
5,5 / 10 - par 2 personnes
5,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (9)
Ajouter un commentaire et/ou une note

Description

Cliquez pour voir la capture en taille normale
Bonjour,
j'ai créé un compteur de visite, dont vous pouvez changer les couleur du fond et du texte.
Si le naviguateur n'accepte les images, le nombre de visites s'affiche sous forme de texte !
Merci de donner votre avis, et soyez indulgent, c'est ma première source PHP !
 

Source

  • <?
  • if (file_exists("compteur.txt"))
  • {
  • $compteur = fopen('compteur.txt', 'r+');
  • $vu = fgets($compteur);
  • }
  • else
  • {
  • $compteur = fopen('compteur.txt', 'a+');
  • $vu = 0;
  • }
  • //ecriture du nombre de visites dans un fichier txt
  • $vu++;
  • fseek($compteur, 0);
  • fputs($compteur, $vu);
  • fclose($compteur);
  • $image = imagecreate(200,50);
  • //changer le couleur du fond (R,V,B)
  • $couleur= imagecolorallocate($image, 183, 213, 189);
  • //changer la couleur du texte (R,V,B)
  • $couleurtexte= imagecolorallocate($image, 255, 255, 255);
  • imagestring($image, 4, 35, 15, $vu, $couleurtexte);
  • imagepng($image, "compteur.png");
  • ?>
  • <!--Compteur de Luc@s -->
  • <img src='compteur.png' alt='<? echo "page vue $vu fois"; ?>'/>
<?
if (file_exists("compteur.txt"))
{
$compteur = fopen('compteur.txt', 'r+');
$vu = fgets($compteur); 
}

else
{
$compteur = fopen('compteur.txt', 'a+');
$vu = 0; 
}

//ecriture du nombre de visites dans un fichier txt
$vu++; 
fseek($compteur, 0); 
fputs($compteur, $vu); 

fclose($compteur);
$image = imagecreate(200,50);
//changer le couleur du fond (R,V,B)
$couleur= imagecolorallocate($image, 183, 213, 189);
//changer la couleur du texte (R,V,B)
$couleurtexte= imagecolorallocate($image, 255, 255, 255);
imagestring($image, 4, 35, 15, $vu, $couleurtexte);
imagepng($image, "compteur.png"); 

?>
<!--Compteur de Luc@s -->
<img src='compteur.png' alt='<? echo "page vue $vu fois"; ?>'/>

Conclusion

Je vais essayer de mettre les codes pour d'autres couleurs.


 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

05 septembre 2007 10:28:41 :
Vérif du code
20 septembre 2007 08:37:54 :
verif

Commentaires et avis

signaler à un administrateur
Commentaire de Flachy Joe le 03/09/2007 19:39:37

Le niveau débutant n'est pas destiné aux sources DES débutants mais aux sources POUR débutants, il faut donc qu'elles aient un minimum d'intérêt pour ceux qui vont la regarder.

Merci.

signaler à un administrateur
Commentaire de coucou747 le 03/09/2007 21:29:35

faudrait au moins faire deux fichiers pour ca...

signaler à un administrateur
Commentaire de codefalse le 03/09/2007 23:11:50 administrateur CS

rhaa ce que vous êtes méchants :p

lucas74 : Ce qui serait préférable, c'est que tu fasse, comme Coucou747 l'a dit, deux fichiers.
Je sais pas s'il pense comme moi, mais ce serait mieux de generer l'image à la volée sans l'enregistrer en dur, ca t'évite un temps d'accès inutilement. Tu fait un fichier generate_img.php (par ex), qui genere l'image en fonction du nombre de visiteur, et au final il affiche l'image (modification de l'en-tête pour afficher une image)
Ensuite dans ta page principale, tu n'a qu'a faire <img src="generate_img.php" alt="Visiteurs" /> et tu a ton image qui apparait correctement.

Ensuite, afin de clarifier ton code, a ta place je mettrait l'action de lecture/écriture dans des fonctions, afin de pouvoir les modifiers à ta guise (si demain tu veux utiliser une base de donnée plutot qu'un fichier, tu pourra le modifier plus simplement)

Ensuite, essaye de generer une image qui aie les proportions par rapport au nombre de visiteurs. Quand on regarde ton screenshots, ca donne pas trop envie, le texte n'est pas axé par rapport aux dimensions de l'images.

Ensuite, même idée, tu peux faire une fonction qui crée une image avec comme parametre le nombre de visiteurs, puis le code couleur (optionel).

Au final trois fonctions

$iNombreVisiteurs = VisitorsCount (); (ou VisitorsCount ('MonFichier.txt');)
VisitorsUpdate ($iNombreVisiteurs++); (ou VisitorsUpdate ($iNombreVisiteurs++, 'NomDufichier.txt');)

$sImage = GenerateImg ($iNombreVisiteurs, array (183, 213, 189));

header ('Modification des entetes pour afficher une image (je me rapel plus c'est quoi !');
echo $sImage;


Et voila !
Bien entendu, c'est une méthode possible, comme une autre ! :)

signaler à un administrateur
Commentaire de coucou747 le 03/09/2007 23:59:43

c'est effectivement a ca que je pensais
pour la fonction par contre, je ne suis pas trop d'accord... l'interret de la fonction, c'est de pouvoir l'appeller plusieurs fois en une seule requete http... ici, c'est pas possible...

ensuite, obtennir l'image dans une chaine, avec gd, faut jouer avec ob_start et c'est crade...

par contre, faire un fichier php qui prendrait comme parametre le nombre de visiteurs, ca peut-etre pas mal

echo '<img src="compteur.php?nbrvisites='.$nbr.'" alt="'.$nbr.' visiteurs"/>';

signaler à un administrateur
Commentaire de codefalse le 04/09/2007 00:03:24 administrateur CS

"pour la fonction par contre, je ne suis pas trop d'accord... l'interret de la fonction, c'est de pouvoir l'appeller plusieurs fois en une seule requete http... ici, c'est pas possible..." => tu parle de quelle fonction ?

pour l'image et ob_start, pas forcément, puisque techniquement dans le fichier, il n'y aura pas de texte avant son affichage (puisqu'il ne va afficher que l'image)
techniquement, il y aura :
fonction récuperer le nbr de visiteurs
fonction uploader nbr de visiteurs
fonction création de l'image
header ();
header ();
echo retour de fonction;

Après c'est vrai que le fait de faire un fichier qui genere l'image, et un autre qui s'occupe du compteur, c'est plus sympa :)

signaler à un administrateur
Commentaire de coucou747 le 04/09/2007 00:06:51

la fonction GenerateImg est inutile selon moi...

dans ton precedant message, t'avais update du nombre de visiteurs, la t'as fonction uploader nbr de visiteurs... a mon avis, tu voulais dire update non ?

signaler à un administrateur
Commentaire de codefalse le 04/09/2007 00:07:55 administrateur CS

euh oué, pardon :)

signaler à un administrateur
Commentaire de lucas74 le 05/09/2007 10:32:38

Ok merci pour vos conseils pour vos avis pour le moins décourageants ^^
Je vais essayer d'améliorer ca !
Sinon l'image php j'y avait pensé mais j'ai préféré l'enregistré sur le disque, allez savoir pourquoi.
a+

signaler à un administrateur
Commentaire de lucas74 le 05/09/2007 10:34:31

Euh, pour la simplicité deconcertante de l'image, c'est pour éviter d'arriver aux compteur vulgaires aux couleurs affreuses non paramérables qu'on trouve aujourd'hui sur internet. Celui ci est discret.

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

probleme phpsessid [ par soothsayer ] Bonjour,j'ai un petit soucis que je ne parviens pas à résoudre:sur l'index de mon site (page d'accueil avec compteur de visites "basique" en php )lors Compteur de visites unique [ par must ] Salut comment faire un compteur de visites qui pourrait compter une seule fois la visite d'une page,c'est à dir si la personne reviens dix fois sur la Nombre de jours écoulés [ par bidaya ] Bonjour, je souhaiterais créer un mini-site d'une page qui donne en temps réel le nombre de jours écoulés entre une date (exemple 4 mars 2009) et le j variables compteurs fichiers textes ne s'affiches pas sur le site web [ par danaweb2008 ] Bonsoir à tous !Je suis débutant, donc de l'indulgence.Les fichiers textes sont des compteurs de visites.Je ne comprens pas ce qui se passe, en local Nombre de fois vues [ par picasso1er ] J'ai monter un script d'actualité et j'aimerais ajouter un champ dans ma table MYSQL qui aura pour but de donner le nombre de fois qu'un article à été Compteur de visites avec Flash5 [ par must ] Salut,comment faire un compteur de visites avec flash5 et PHPSoit avec un fichier texte,ou base de donnéesCompteur qui ne doit s'incrémenter une seule Fichiers textes, variables ne s'affiches pas sur le site web mais OK en local ??? [ par danaweb2008 ] Bonsoir à tous !Je suis débutant, donc de l'indulgence.Les fichiers textes sont des compteurs de visites.Je ne comprens pas ce qui se passe, en local limiter le nombre d'articles par page à 5 . Après faire Page suivante [ par rakot ] Oscommerce Comment limiter le nombre d'articles par page à 5 . Après faire Page suivante compteur de visiteurs php [ par kamy31 ] salut tout le monde,j'ai réalisé un site en php et  j'avais un problème concernat l'insertion de nombre de visiteurs dans ma page d'acceuil php, pour


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,562 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.