[PHP] un petit compteur de visites ?

un petit compteur de visites ? [PHP] - PHP - Programmation

Marsh Posté le 01-01-2004 à 20:06:03    

Hello,
 
Je vais faire un compteur de visites, mais je sais pas encore tout à fait comment, surtout comment faire le stocage des données.
Mon compteur reposera sur un systeme d'identifiquation basé sur les cookies, les ip, et les session.
A part compter les visites et les hits je voudrais aussi avoirs quelques infos sur les visiteurs.
 
Dans ma table mysql j'ai donc pensé socker les données suivantes (elles sont pas encore toutes là):
id (comme toujours)
1st_visit (date de la 1ere visite)
last_visit (date de la dernière visite)
num_visits (nombre de visites)
client_ip (IP du client)
host (ben... host quoi)
referer
country (le pays du client)
lang (la langue du client)
user_agent (le navigateur)
os (système du client, c'est possible séparé du user_agent au fait ??)
 
 
Bon voila c'est à peut près ca mais je sais pas encore comment trouver les donné suivantes sur le client que j'aimerais aussi avoir dans ma table :
 
- Je sais comment trouver le referer, mais cette fonction retourne le nom de domaine non ? Mais est ce qu'il et possible d'avoir l'url précise qui a conduit à ma page ?
 
- Pour ce qui est du pays du client je sais pas encore comment faire, la seul chose que j'ai trouvé c'est ca : http://cyberzoide.developpez.com/php4/ip-to-country/ , j'ai pas encore tout lu mais il me semble que c'est un service qui se trouve sur leurs serveurs. Est ce qu'il y a une alternative qui serais interne (sur mon serveur quoi) ?
 
- Je voudrais aussi savoir comment avoir les informations que l'on peur voir sur http://www.showmyip.com/ :
Le "state", "province", et "city" c'est possible de trouver ca en php ?
Et comment est ce qu'il font pour trouver "Internet Service Provider (ISP)" et "IP Address belongs to (Organization)" ?
Sur ce meme site en bas on voit aussi "Accept:". Ce sont tous les formats accepté par le navigateur ? Comment est ce que cela fontcionne, est ce que c'est une simple fonction php ou est ce que le serveur a une bdd avec les possibilités de chaque navigateur ?
 
 
J'ai encore besoins d'un peu d'aide pour ma bdd elle même: j'ai remarqué que les compteurs de ce genre stockent toutes ces informations dans une seule table. Comment faire ? Je vois pas vraiment car à part les élément que j'ai écrit plus haut je voudrais aussi avoirs les infos suivantes :
(ce compteur sera sur toutes les pages de mon site)
 
Je voudrais avoir le nombre de pages vues par chaque visiteurs et les noms de ces pages, le nombre de fois qu'elles ont été vu, et (si possible) les dates/heures pour chaque page de facon à pouvoir en sortir des statistiques par jours, heure etc.
Le problème c'est que je vois pas comment socker toutes ces données, surtout dans une seul table.
 
 
Bon je sais pas si c'est très clair alors n'hésitez pas à me demander si vous ne comprenez pas ce que j'ai écrit :)


Message édité par Big-Foot le 01-01-2004 à 20:08:06
Reply

Marsh Posté le 01-01-2004 à 20:06:03   

Reply

Marsh Posté le 02-01-2004 à 01:27:12    

Citation :

- Pour ce qui est du pays du client je sais pas encore comment faire, la seul chose que j'ai trouvé c'est ca : http://cyberzoide.developpez.com/php4/ip-to-country/ , j'ai pas encore tout lu mais il me semble que c'est un service qui se trouve sur leurs serveurs. Est ce qu'il y a une alternative qui serais interne (sur mon serveur quoi) ?


Bon alors j'ai lu, et en fait on peut telecharger leur bdd c'est bon  :jap:

Reply

Marsh Posté le 02-01-2004 à 09:47:22    

pour voir comment d'autres gèrent ça :
très très complet
 
http://www.php-stats.com/ (dispo en fr)
 
et la démo
http://www.php-stats.com/stats/admin.php

Reply

Marsh Posté le 02-01-2004 à 14:22:17    

merci, mais je vois pas ou elle est la version en fr (ni une version en anglais), c'est que je connais pas l'italien en fait :D
mais bon je regarde quand meme merci :)

Reply

Marsh Posté le 02-01-2004 à 18:04:00    

prend la version anglaise/italienne : http://www.php-stats.com/stats/download.php?id=5
 
le français ne devrait pas tarder

Reply

Marsh Posté le 03-01-2004 à 18:00:37    

j'ai reussi à installer la bdd (à la main pask j'arrivais pas avec leur scripts en italien  :o  :D )
Alors il semble que ce compteur utilise un peut plus d'une table pour stocker les données :
  php_stats_cache
  php_stats_clicks
  php_stats_config
  php_stats_counters
  php_stats_daily
  php_stats_details
  php_stats_domains
  php_stats_downloads
  php_stats_hourly
  php_stats_ip
  php_stats_langs
  php_stats_pages
  php_stats_query
  php_stats_referer
  php_stats_systems
 
Je vais essayer de comprendre comment tout ca fonctionne, et surtout si les donnés sont ici liées entres elles : par exemple si l'ip le pays et les pages vues sont liées. Mais pour l'instant j'ai pas l'impression.
 
Si vous avez déjà fait un truc semblable n'hésitez pas à m'aider. Par ce que pour l'instant je vois pas encore comment stocker les données de facon à pouvoir resortir des stats par date, pays, utilisteur etc...


Message édité par Big-Foot le 03-01-2004 à 18:01:35
Reply

Marsh Posté le 03-01-2004 à 18:12:24    

jette un oeil là : http://phpmyvisites.net/phpmyvisites/
 
C'est vraiment pas compliqué à mettre en puevre et ça a des sorties graphiques sympas :)

Reply

Marsh Posté le 03-01-2004 à 18:13:04    

oui mais je veut pas installer un compteur je veut en faire un

Reply

Marsh Posté le 03-01-2004 à 18:16:31    

un tuto : http://www.piregwan.com/tutorials/ [...] isites.php
 
pg.com roxor :)


Message édité par black_lord le 03-01-2004 à 18:16:54
Reply

Marsh Posté le 03-01-2004 à 18:26:28    

merci, mais c'est beaucoup trop simple comme compteur ce qu'il y a sur ce tuto.
Mon poblème c'est que je sais pas comment bien stocker toutes les donnés.
dans ce tutos il y a pas ce probleme :D :
CREATE TABLE compteurs (
titre_page longtext NOT NULL,
compteur int(11) DEFAULT '0' NOT NULL,
date_derniere_visite longtext NOT NULL
);


Message édité par Big-Foot le 03-01-2004 à 18:26:41
Reply

Marsh Posté le 03-01-2004 à 18:26:28   

Reply

Marsh Posté le 03-01-2004 à 18:29:30    

c'est juste un tuto, pas la solution à ton problème :D
un tuto te montre une marche à suivre, te met sur la voie mais ne fait pas tout à ta place...


Message édité par black_lord le 03-01-2004 à 18:30:10
Reply

Marsh Posté le 03-01-2004 à 18:34:25    

oui je sais mais mon probleme n'est pas vraiment traité, c'est ca que je voulais dire. Un compteur simple j'arrive a faire sans probleme, la ou j'ai du mal c'est quand je dois imaginer la bdd pour un compteur plus évolué qui stock bcp d'information sur l'utilisateurs et qui dois par la suite les resortir et en faire des statistques.
Je vais regarder comment font les compteurs que vous avez donné plus haut et je vais essayer de m'en inspirer.

Reply

Marsh Posté le 03-01-2004 à 18:42:10    

phpmyvisites me parait vraiment pas mal  :jap:  
Je l'ai installé en local, il y a seulement 6 tables et les stats qu'il sort sont nombreuses. Je vais regarder tout ca de plus près  
merci


Message édité par Big-Foot le 03-01-2004 à 18:42:32
Reply

Marsh Posté le 04-01-2004 à 23:57:39    

Je pense avoir ce qu'il te faut; toutes les stats que tu voulais sont là :
 
http://www.lephpfacile.com/howto/i [...] afficher=8

Reply

Marsh Posté le 05-01-2004 à 20:34:02    

ca me parait quand meme un peu plus léger que phpmyvisites. Mais merci c'est toujours sympa d'avoir le code avec des expliquation claires à coté  :jap:  
 
Je pense que je vais m'inspirer de la bdd de phpmyvisites, et puis si j'en est besoins je vais regarder par-ci par-là comment sont faits les scripts des compteurs :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed