Fichiers log, stats, traces du passage des visiteurs sur un site

Contenu du snippet

Ce petit bout de code permet a un webmaster de connaitre les ips de ses visiteurs, les pages qu'ils visitent et s'il y a une zone membre, cela permet de connaitre le pseudo du visiteur. Le code est fait pour phpBB, mais il peut être adapté à la sauce de n'importe quel site en modifiant seulement les noms des variables.

Source / Exemple :


// On définit un nom de fichier texte en fonction de la date en cours
$filename = date('d-m-Y') . '.txt';
// On définit un nom de dossier en fontion de la date
$folder = date('M-Y');

// si besoin, on créé un dossier avec portant le nom du mois et de l'année en cours 
$path = $phpbb_root_path . 'logs/' . $folder . '/';
!is_dir($path) ? @mkdir($path) : '';

// On ouvre le fichier ou l'on va écrire les données
$fp = fopen($path . $filename, 'a');
fseek($fp, 0);

// Chaine de formattage de la date, changez-la si vous la trouvez trop longue ou pas à votre gout ;)
$date_str = 'D d M Y H:i:s T(O)';

// Utile seulement si une zone membre existe
$username_str = (isset($userdata['username']) ? $userdata['username'] : '-');

// on fait en sorte que les informations importantes soient formattées comme dans un tableau
// cette partie n'est pas indispensable
$export = sprintf('[%30s] %15s %25s - %20s - Agent: %s'."\n",
               date($date_str),
               $_SERVER['REMOTE_ADDR'],
               $username_str,
               $_SERVER['PHP_SELF'],
               $_SERVER['HTTP_USER_AGENT']);

// on écrit dans le fichier texte
fputs($fp, $export);
fclose($fp);

Conclusion :


Pas de grosse difficulté au niveau de la complexité du code :)

pour phpBB:
placer le code dans le fichier ./includes/page_header.php, dans les dernières lignes du fichier, juste avant:

$template->pparse('overall_header');

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.