Navigation : DEVELOPPEMENT > PHP
SCRIPT STATISTIQUES POUR SITE WEB
Voilà mes sources pour le developpement d'un script de statistiques pour votre site web.
www.polyteknique.netPRESENTATION
Le projet est encore en travaux, mais voilà un bon début. Il manque bien évidement des graphiques ! Pour cela, il existe la librairie JpGraph au niveau PHP qui fait cela très bien (toute idée  est la bienvenue). Ce sera fait à temps perdu. Il manque aussi, une notion d'archivage des données afin de dégrossir la table principale qui gonfle à chaque clique ! Pour cela, faut déterminer quelles informations on souhaite archiver. Il faut, je pense, faire une archive par mois pour garder des cumuls (mais là je suis en reflexion sur ce point et j'ai peu de temps libre aussi !!!).
www.polyteknique.netLA TABLE PRINCIPAL
Je ne détaille pas la gestion de la base de données puisque j'utilise une classe d'abstraction BD unique sur l'ensemble de mon site. Voici uniquement la structure de l'unique table (pour l'instant).

#
# Structure de la table `stat_log`
#

CREATE TABLE stat_log (
  num_int int(11) NOT NULL auto_increment,
  date date NOT NULL default '0000-00-00',
  heure time NOT NULL default '00:00:00',
  host varchar(100) NOT NULL default '',
  page varchar(100) NOT NULL default '',
  ref varchar(200) NOT NULL default '',
  agent varchar(100) NOT NULL default '',
  PRIMARY KEY  (num_int),
  KEY date (date)
) TYPE=MyISAM;
www.polyteknique.netA PLACER SUR CHAQUE PAGE ...
if ($log == "false"){
     setcookie("log", "false", time() + (3600*100000));
}else{
     $ctrl_stat -> log_visite($_SERVER['REMOTE_ADDR'], $_SERVER['SCRIPT_NAME'], $_SERVER['QUERY_STRING'], $_SERVER['HTTP_REFERER'], $_SERVER['HTTP_USER_AGENT']);
}

Ce bout de script permet d'enregister chaque mouvement :

- le nom de la machine distante (ou son IP si la machine n'a pas nom)
- la page vue (blabla.php)
- la requete (?var=val...)
- le referant (le lien d'où vient le visiteur)
- l'agent (navigateur)

La présence d'un cookie permet de ne pas enregister certaines visites (comme celle de l'admin du site par exemple). Pour installer le cookie, il faut appeller la page de votre site avec une requete ?log=false.
www.polyteknique.netLES SOURCES DU MOTEUR
Vous trouverez ci-dessous les sources de la classe controleur et gestion des des données dans la base. Encore une fois, il reste pas mal de chose à faire pour rendre les choses plus conviviales.

Toute idée est la bienvenue, contactez le webmaster si vous voulez participer à l'amélioration de ce script. :-)
www.polyteknique.netLES LIENS :
LA CLASSE D'ACCES AUX DONNEES : index.php?mod=lect&fic=sta...
LA CLASSE CONTROLEUR : index.php?mod=lect&fic=sta...

Rédigé le : 2004-05-19 13:42:44