Conseils utiles

Comment écrire un site web hit counter sur PHP

Pin
Send
Share
Send
Send


Bonne journée! Je pense qu’ils se souviennent encore du fait que récemment, après de petits problèmes sur les serveurs de Google, de nombreux sites sont également tombés en panne.
En fait, cette situation peut se produire avec n’importe quel service sur Internet, il est donc préférable d’être à nouveau en sécurité.
Pour de nombreuses organisations, les statistiques de trafic sur le site affectent le travail des spécialistes du marketing qui déterminent les villes où la demande de produits est la plus forte, etc. Mais que se passe-t-il si le service de statistiques utilisé sur le site échoue temporairement?

Il existe une solution: utilisez votre script pour suivre les visites de sites avec des services tiers.

Notre script sera composé de trois fichiers:

  • stat.php - Inclut chaque page à surveiller
  • stat.log - fichier dans lequel l'historique des visites sera enregistré
  • seestats.php - fichier de visualisation des statistiques

En fait, n'importe quel nom de fichier peut être utilisé.


Pour éviter de creuser manuellement le fichier stat.log à chaque fois, créez un fichier pour afficher les statistiques des visites sur le site:
Fichier seestats.php


C'est tout! Maintenant, même avec la chute de liveinternet ou de Yandex.Metrica, vous pouvez toujours savoir qui est venu sur votre site!

Cet article n'est pas sujet à commentaires, son auteur n'étant pas encore membre à part entière de la communauté. Vous ne pouvez contacter l'auteur qu'après avoir reçu une invitation de l'un des membres de la communauté. Jusqu'à ce moment-là, son nom d'utilisateur sera caché par un alias.

Populaire

  • Accueil
  • ->
  • Matériaux
  • ->
  • Site web à faire soi-même en PHP et MySQL

Reg.ru: domaines et hébergement

Le plus grand registraire et fournisseur d'hébergement en Russie.

Plus de 2 millions de noms de domaine en service.

Promotion, courrier de domaine, solutions commerciales.

Plus de 700 000 clients dans le monde ont déjà fait leur choix.

Cours gratuit "Practice HTML5 and CSS3"

Apprenez gratuitement un cours vidéo étape par étape

sur les bases de la mise en page adaptative

HTML5 et CSS3 à partir de zéro.

Cadre Bootstrap: Disposition adaptative rapide

Cours vidéo étape par étape sur les bases de la mise en page adaptative dans le cadre Bootstrap.

Apprenez à mettre en page facilement, rapidement et efficacement en utilisant un outil puissant et pratique.

Mise en page pour commander et obtenir de l'argent.

Que devez-vous savoir pour créer des sites PHP?

La réponse est ici. Seulement le plus important et utile pour un développeur web novice.

Apprenez à créer des sites PHP de qualité en seulement 2 heures et 27 minutes!

Construisez votre site web en 3 heures et 30 minutes.

Après avoir visionné ce cours vidéo, vous aurez un site prêt à être utilisé sur votre ordinateur que vous avez créé vous-même.

Il vous suffit de le remplir avec les informations nécessaires et de modifier le design (facultatif).

Apprenez les bases du HTML et du CSS en moins de 4 heures.

Après avoir visionné ce cours vidéo, vous cesserez de regarder avec horreur le code HTML et vous comprendrez comment cela fonctionne.

Vous pouvez créer vos premières pages HTML et leur donner l'apparence que vous souhaitez avec CSS.

Cours WordPress gratuit sur site web

Envie d'apprendre WordPress CMS?

Obtenez des leçons sur la conception et la mise en page de sites Web sur WordPress.

Apprenez à travailler avec des thèmes et à couper la mise en page.

Cours vidéo gratuit sur la conception, la mise en page et l'installation de sites Web sur WordPress CMS!

Vous voulez apprendre le JavaScript, mais vous ne savez pas comment vous y prendre?

Après avoir terminé le cours vidéo, vous apprendrez les bases du travail avec JavaScript.

Les mythes sur la complexité du travail avec cette langue vont bon train et vous serez prêt à apprendre JavaScript à un niveau plus sérieux.

* Passez la souris sur pour suspendre le défilement.

Site web à faire soi-même en PHP et MySQL

Taille: 53,8 Mo.

Durée: 34 minutes 25 secondes

Dans cette leçon, nous verrons comment vous pouvez créer un compteur de hit simple pour votre site. Un exemple que nous allons implémenter en PHP en utilisant une base de données.

Il est clair qu’il existe maintenant de nombreuses solutions toutes faites - à partir de liveinternet et mail.ruet se terminant par Yandex.Metrica.

Tous ces services fournissent de nombreuses informations statistiques différentes, mais on me demande encore périodiquement comment vous pouvez créer même votre propre compteur simple pour les visites sur le site.

Nous n'enregistrerons pas des dizaines et des centaines de paramètres, comme le font des monstres comme Yandex. Je vais vous montrer le principe de la création d'un compteur, et si vous le souhaitez, vous pouvez ajouter d'autres fonctions là-bas, si nécessaire.

Toutes les sources utilisées dans la leçon sont attachées à l'archive avec le didacticiel vidéo.

Vous pouvez voir cette leçon maintenant ou la télécharger sur votre ordinateur à partir du lien ci-dessus.

Sous la vidéo, vous trouverez une version abrégée du texte pour ce didacticiel vidéo.

Un bref aperçu de la leçon (voir la vidéo pour plus de détails):

De quoi avons-nous besoin?

1. 4 fichiers presque identiques jouant le rôle de différentes pages du site (index.php, contacts.php, about.php et uslugi.php)
2. Fichier .htaccess pour la définition du codage du serveur sur UTF-8
3. Le dossier css avec la feuille de style. Il existe des styles simples pour nos pages.
4. Dossier Inc avec les fichiers d'inclusion. Il y en a trois:
- fichier de connexion à la base de données
- Un fichier qui sera connecté au bon endroit sur la page pour afficher le compteur
- Le script principal dans lequel la logique du compteur est enregistrée
5. Le dossier admin avec le fichier index.php. Dans ce fichier, nous pourrons consulter les statistiques des visites sur site.

Comment ça marche?

1. Créez un projet à Denver (ou sur un vrai serveur)

J'ai créé un hôte à Denver avec le nom statistiqueet dans le dossier www sont tous les fichiers du site.

2. Créer une base de données

Passons maintenant à la création d’une base sur laquelle nous aurons toutes les informations. Appelons-la les stats et créer deux tables dedans.

Si vous ne souhaitez pas créer manuellement de tables, vous pouvez utiliser le vidage de la base de données (attaché à des matériaux supplémentaires) et exécuter la requête SQL sur l'onglet SQL après la création de la base de données.

Donc créer la première table. Appelons-la ips - il stockera les identifiants des adresses IP et les adresses IP des visiteurs du site eux-mêmes.

La table aura 2 champs:

- id_id (int (12), clé primaire, auto-incrémentation) - identifiant de l'adresse IP,
- ip_address (varchar (50)) - l’adresse IP du visiteur elle-même.

Ensuite nous créons deuxième table. Appelons-la visites - il va stocker des informations sur les visites de sites.

Il y aura 4 champs dans la table:

visit_id (int (12), clé primaire, auto-incrémentation) - identifiant de la visite,
date (date) - date de la visite,
hôtes int (12) - le nombre d'hôtes (visites uniques),
views int (12): nombre d'occurrences (pages vues).

En conséquence, la base ressemblera à ceci:

3. Dispositions de base

Maintenant que la base de données est créée, vous pouvez passer à plusieurs points sur lesquels nous allons nous appuyer lors de l'écriture du script:

1. Nous déterminerons le visiteur unique par adresse IP. 1 adresse IP est égal à 1 visiteur unique (hôte).

2. Les visites d'un jour avec la même adresse IP n'augmentent pas le nombre de visiteurs uniques ce jour-là.

3. Toute visite sur le site au cours de la journée augmente le nombre de visites (hits) de 1 (qu'il s'agisse d'une adresse IP unique ou non).

4. Nous allons déterminer le début de la journée comme suit: lorsqu’une personne visite le site, nous vérifierons s’il y en a dans le tableau. visites toutes les entrées pour la date d'aujourd'hui. Sinon, le visiteur actuel est le premier visiteur de ces jours.

5. Une fois par jour, la table avec les adresses IP est nettoyée afin que nous puissions y entrer des adresses IP déjà le jour en cours et collecter des statistiques sur les visites du site aujourd’hui (ceci est dû au fait qu’il a été découvert que le premier du visiteur de jours).

4. Nous écrivons des fichiers de page de site (index.php, contacts.php, about.php et uslugi.php)

Les 4 fichiers des pages du site étant presque identiques, nous ne considérerons que la page. index.php. Les trois pages restantes (contacts.php, about.php et uslugi.php) ne diffèrent que par les balises titre et h2dans lequel d'autres noms de page sont écrits.

Donc fichier index.php:

Au tout début nous incluons le fichier count.php, qui contient toute la logique du compteur.

Vient ensuite l'inclusion de la feuille de style et d'un balisage simple. Dans div bloc avec id nav un menu est joint et seuls quelques styles simples sont écrits dans la feuille de style.

Dans la partie inférieure, devant l'étiquette de fermeture corps nous incluons le fichier show_stats.php, qui contient le code de compteur lui-même, c.-à-d. Ce fichier génère déjà directement ce que nous allons afficher à l'écran.

I.e. Sur chaque page du site, nous afficherons un compteur indiquant le nombre de visiteurs uniques et de visionnages actuels. Nous analyserons ce fichier plus tard.

5. Nous écrivons la feuille de style (style.css)

Comme vous pouvez le constater, les styles sont très simples. Nous définissons l'indentation, la taille de la police et la police de caractère, supprimons le soulignement des liens dans le menu et modifions la couleur d'arrière-plan lorsque vous survolez l'élément de liste.

De plus, nous utilisons la propriété afficher avec valeur en ligne de sorte que notre menu prend une apparence horizontale plutôt que verticale.

6. Nous écrivons le fichier .htaccess

Juste au cas où, créez un fichier à la racine du site .htaccess avec une seule directive pour spécifier le codage UTF-8:

Cette étape peut être redondante si le codage du serveur a déjà été défini sur cette valeur.

7. Connectez-vous à la base de données (db.php)

En fichier db.php Les paramètres de connexion à la base de données sont spécifiés - hôte, nom de la base de données, nom d'utilisateur et mot de passe.

La connexion est établie directement dans le même fichier et l'identificateur de connexion est entré dans la variable $ db. En cas d'erreur, un message s'affiche indiquant qu'il n'est pas possible de se connecter à la base de données.

7. Nous écrivons le fichier principal avec une logique (count.php)

Vous trouverez ci-dessous le code que nous analyserons brièvement:

Donc, d'abord, nous incluons le fichier bd.php, assurant la communication avec la base de données, après quoi nous commençons à écrire le code principal.

Tout d’abord, nous recevons du tableau mondial $ _SERVER Adresse IP du visiteur et enregistrer la date du jour.

Nous avons besoin d’une date afin de vérifier s’il ya déjà eu des visites aujourd’hui ou non. C’est juste notre prochaine étape.

De plus, nous n’avons que 2 options: soit il n’ya pas eu de visites aujourd’hui, soit il ya déjà eu des visites aujourd’hui.

Dans le premier cas (s'il n'y a pas encore eu de visite) et le visiteur actuel est le premier de ces jours, nous nettoyons la table avec des adresses IP.

Nous avons besoin de cela pour pouvoir commencer à collecter des statistiques dès aujourd'hui.

De plus, nous entrons dans la base de données l’adresse IP du visiteur actuel, et dans la base de données du jour en cours nous plaçons dans les champs de vues et visiteurs uniques par unité, car C'est la première personne à apporter aujourd'hui le premier hit et le premier hôte.

La deuxième option est quand les visites ont déjà été aujourd'hui.

Dans ce cas, nous vérifions si l'adresse IP à partir de laquelle l'appel est déjà dans la base de données est déjà présente. nous n'avons besoin d'envisager que des adresses IP uniques en une journée.

S'il s'avère qu'une telle adresse IP existait déjà aujourd'hui, nous ajoutons +1 à la valeur d'affichage actuelle et rien de plus.

Si aucune adresse IP de ce type n’existait aujourd’hui (c’est-à-dire que le visiteur est unique), nous sauvegardons son adresse IP dans la base de données et mettons à jour les valeurs du nombre de visiteurs uniques et de vues (c’est-à-dire que nous augmentons d’un créneau les valeurs des deux champs).

Sur ce dossier count.php peut être considéré comme démonté.

8. Nous écrivons un fichier qui affiche le compteur sur la page (show_stats.php)

Fichier show_stats.php nous utilisons sur chacune des pages afin d'afficher des informations statistiques. Voici son code:

Comme vous pouvez le constater, ce fichier est beaucoup plus simple.

Ici, nous obtenons seulement les statistiques pour la date actuelle de la base de données, après quoi nous utilisons les clés du tableau résultant. $ row pour afficher le nombre de visiteurs uniques (champ hôte) et des vues (champ vues).

9. Créez le fichier du panneau d'administration (index.php dans le dossier admin).

Dans ce fichier, nous présenterons les statistiques de visites sous forme de tableau.

De plus, nous réalisons la capacité de recevoir des statistiques pour une certaine période de temps. Ci-dessous le code du fichier index.php:

Connectez-vous d'abord à la base. Ensuite, nous formons deux liens avec des paramètres qui, lorsque nous cliquons dessus, recevront des données pour un certain intervalle de temps (dans l'exemple: pour 1 jour et 1 semaine).

Nous vérifions également le tableau global. $ _GET pour la présence du paramètre passé par nous (intervalle) et, si la valeur de ce paramètre n'est pas un nombre, nous affichons un avertissement correspondant.

Si tout va bien, nous adressons une demande à la base de données en extrayant tous les enregistrements triés par date dans l'ordre inverse du nombre de pièces spécifié dans le paramètre. intervalle.

Après ça on commence la boucle pendant que et dans ce que nous formons les lignes de la table, affichant les éléments du tableau résultant dans leurs cellules $ row (date, hôtes et vues), donnant une liste de toutes les visites pour la période spécifiée.

Eh bien, sur ce point, l’analyse du script peut être considérée comme terminée. Si vous le souhaitez, vous pouvez le modifier, en le forçant, par exemple, à collecter davantage de statistiques.

Si vous ne comprenez pas bien la brève révision du texte, étudiez la version complète de la leçon au format vidéo sur cette page ci-dessus.

Bonne chance à vous et à la connexion!

P.S. Voulez-vous travailler facilement avec PHP? Faites attention aux leçons premium sur divers aspects de la construction de sites, y compris la programmation en PHP, ainsi qu'à un cours gratuit sur la création de votre système CMS en PHP à partir de zéro. Tout cela vous aidera à apprendre rapidement et facilement ce puissant langage de développement Web:

Aimez-vous le matériel et souhaitez-vous remercier?
Partagez-le simplement avec vos amis et collègues!

Nous recueillons des données et transmettons des statistiques au guichet.

Nous déterminerons l'adresse IP du visiteur et la date de visite en utilisant PHP, et tout le reste en utilisant JavaScript. Écrivons un code que nous mettrons sur les pages de notre site et avec lequel nous rechercherons les informations nécessaires sur le visiteur. Nous allons d’abord savoir si les cookies sont activés dans le navigateur du visiteur. Pour ce faire, vous devez transmettre le cookie au navigateur et connaître le résultat - qu'il ait ou non reçu un cookie. Nous allons enregistrer cette valeur dans la variable cookie_detect:

En conséquence, la chaîne cookie_detect se verra attribuer la chaîne c = Oui si les cookies sont activés dans le navigateur ou c = Non si désactivé. Maintenant, nous allons déterminer tout le reste et passer immédiatement les données reçues à un script qui traitera les informations et les enregistrera dans la base de données:

La fonction JavaScript Math.random () est utilisée ici pour générer, à chaque chargement de page, un nouveau nombre aléatoire dans l’adresse du compteur. Ceci est fait pour que le navigateur accède au serveur à chaque fois, plutôt que de prendre des données du cache, et nous pouvons obtenir les statistiques les plus précises. Si vous ne comprenez pas quelque chose ici, lisez l’article "Comment passer une variable de JavaScript à PHP", ainsi que le manuel JavaScript.

N'oubliez pas les visiteurs pour lesquels JavaScript est désactivé. Sans JavaScript, nous ne pouvons connaître que l'adresse IP du visiteur:

Côté serveur

Toutes les informations sur les visiteurs seront stockées dans une base de données. Nous utiliserons MySQL comme le plus commun. Vous devez maintenant créer une base de données et des tables pour stocker les informations collectées. Créez le fichier d'installation install.php et écrivez-y les éléments suivants:

Dans ces tableaux, nous enregistrerons toutes les données reçues. Créez le fichier config.inc.php et entrez-y le nom d'utilisateur, le mot de passe, le serveur et le nom de la base de données:

Si vous copiez simplement le code de cet article, portez une attention particulière à config.inc.php. Au tout début de ce fichier, il ne devrait pas y avoir d'espaces auparavant - ils peuvent être copiés dans le fichier lorsque le code est sélectionné. La présence de caractères quelconques aux endroits indiqués peut gêner le fonctionnement du compteur. Il en va de même pour le fichier counter.php. De plus, n'oubliez pas de changer le nom d'utilisateur et le mot de passe de la base de données.

Nous démarrons le serveur et tapons le chemin d'accès au fichier d'installation dans la barre d'adresse du navigateur:

Si vous avez tout fait correctement, vous verrez un message: "installation terminée avec succès". Maintenant nous écrivons counter.php, ce qui sauvegardera toutes les données reçues et générera une image de compteur:

Pour générer une image, la bibliothèque PHP GD2 est utilisée. Nous dessinons une image de 88x31 pixels dans un éditeur graphique et l'enregistrons au format gif avec le nom counter.gif. Nous ouvrons la page du site sur lequel le code de compteur est installé et profitons du résultat.


Voici à quoi ressemble notre compteur de résultats graphique

Tout en haut du compteur, le nombre total de hits pour tous les temps est affiché, au centre sont les hits pour aujourd'hui, et tout en bas pour les hôtes d'aujourd'hui.

Interface d'administration

Nous allons maintenant écrire admin.php, avec lequel nous examinerons les données reçues et supprimerons les anciennes entrées inutiles:


Interface d'administration - Afficher les statistiques de visite du site

Vous pouvez développer le compteur de visiteurs. Par exemple, par référent, vous pouvez trouver le moteur de recherche d’un visiteur et ce qu’il a saisi dans la barre de recherche pour trouver votre site.

Comme vous pouvez le constater, cela n’a rien de compliqué. Si vous connaissez PHP et MySQL, alors lire cet article peut facilement écrire votre SpyLog.

Autres entrées connexes dans les sections sur les articles PHP et MySQL

Pin
Send
Share
Send
Send