begin process at 2013 06 19 15:28:06
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Divers

 > FICHIER D'HISTORIQUE DES CONNEXIONS (LOG) À UNE PAGE (SANS MYSQL)

FICHIER D'HISTORIQUE DES CONNEXIONS (LOG) À UNE PAGE (SANS MYSQL)


 Information sur la source

Note :
9 / 10 - par 1 personne
9,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Divers Niveau :Débutant Date de création :29/05/2004 Date de mise à jour :01/06/2004 12:56:32 Vu :7 639

Auteur : antoine129

Ecrire un message privé
Site perso
Commentaire sur cette source (2)
Ajouter un commentaire et/ou une note

 Description

A chaque chargement du script, une ligne est ajoutée au fichier d'historique présenté sous forme d'une liste à plusieurs colonnes : action, jour, heure, login, ip, os et navigateur.
pour mes besoins j'ai 3 types d'enregistrements : connexion, ouverture de compte et fermeture de compte.
L'intérêt principal de ceci est de ne pas utiliser de base de données (cela est util pour certains), mais le script est donc forcément de plus en plus lent au fur et a mesure du nombre de visites (mais rien de rédibitoire, rassurez vous!)
Donc si vous utilisez une base (mysql...), préférez un accès base qu'une modification comme celle ci d'un fichier texte :)

Source

  • Page "log.html" :
  • ________________________________________________________________
  • <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  • <html xmlns="http://www.w3.org/1999/xhtml">
  • <head><title>Fichier Log</title>
  • <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  • <link href="style.css" rel="stylesheet" type="text/css" />
  • <div align="center"><h1>Fichier Log</h1></div>
  • <table width="80%" border="0" cellspacing="2" cellpadding="0" align="center"><thead>
  • Légende : &nbsp; &nbsp; <span style="font-face: Courier New, Lucida Console; font-weight: bold;">=></span> Logged in &nbsp; &nbsp; <span style="font-face: Courier New, Lucida Console; font-weight: bold; background-color: #44DD44;">++</span> Subscribed &nbsp; &nbsp; <span style="font-face: Courier New, Lucida Console; font-weight: bold; background-color: #DD5555;">--</span> Unsubscribed &nbsp; &nbsp;
  • <br><br></thead>
  • <tr><th>Action</th><th>Jour</th><th>Heure</th><th>Login</th><th>Adresse IP</th><th>Système d'exploitation</th><th>Navigateur</th></tr>
  • <tr><td style="font-face: Courier New, Lucida Console; font-weight: bold;" align="center">=></td><td>11/05/2004</td><td>20:03</td><td>mout</td><td>192.168.0.22</td><td>Windows XP</td><td>Internet Explorer</td></tr>
  • ________________________________________________________________
  • script à intégrer dans une page d'autentification par exemple :
  • ________________________________________________________________
  • <?php
  • //detection des parametres de l'utilisateur :
  • $agent = $_SERVER['HTTP_USER_AGENT'];
  • /* navigateur : */
  • if ($agent == "") { }
  • elseif (eregi("MSIE", $agent)) { $nav="Internet Explorer"; }
  • elseif (eregi("Mozilla", $agent)) { $nav = "Netscape"; }
  • else { $nav = "Autres"; }
  • if ($agent == "") { }
  • /* WINDOWS */
  • elseif (eregi("Windows", $agent))
  • {
  • if(eregi("95", $agent)) { $os = 'Windows 95'; }
  • elseif (eregi("98; Win 9x", $agent)) { $os = 'Windows Me'; }
  • elseif (eregi("98", $agent)) { $os = 'Windows 98'; }
  • elseif (eregi("NT 5.0", $agent)) { $os = 'Windows 2000'; }
  • elseif (eregi("NT 5.1", $agent)) { $os = 'Windows XP'; }
  • elseif (eregi("NT", $agent)) { $os = 'Windows NT'; }
  • else { $os = 'Autres Windows'; }
  • }
  • /* LINUX */
  • elseif (eregi("linux", $agent)) { $os = 'Linux'; }
  • /* BEOS */
  • elseif (eregi("beos", $agent)) { $os = 'BeOS'; }
  • /* AUTRE */
  • else { $os = 'Autres'; }
  • $ip=$_SERVER["REMOTE_ADDR"];
  • /*------------------------------------------*/
  • $filename = "log.html";
  • $file = fopen($filename, "r");
  • $log_avant = fread($file, filesize($filename));
  • fclose($file);
  • $file = fopen($filename, "w");
  • $color = "#FFFFFF"; //couleur d'arriere plan de la ligne en cours (est changé chez moi selon le type de connexion (simple, inscription ou desinscription)
  • $log_apres = $log_avant."<tr style=\"background-color: $color;\"><td style=\"font-face: Courier New, Lucida Console; font-weight: bold;\" align=\"center\">=></td><td>".date("d/m/Y")."</td><td>".date("H:i")."</td><td>$login</td><td>$ip</td><td>$os</td><td>$nav</td></tr>\r\n";
  • fwrite($file, $log_apres);
  • fclose($file);
  • ?>
Page "log.html" :
________________________________________________________________
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title>Fichier Log</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link href="style.css" rel="stylesheet" type="text/css" />
<div align="center"><h1>Fichier Log</h1></div>
<table width="80%"  border="0" cellspacing="2" cellpadding="0" align="center"><thead>
Légende : &nbsp; &nbsp; <span style="font-face: Courier New, Lucida Console; font-weight: bold;">=></span> Logged in &nbsp; &nbsp; <span style="font-face: Courier New, Lucida Console; font-weight: bold; background-color: #44DD44;">++</span> Subscribed &nbsp; &nbsp; <span style="font-face: Courier New, Lucida Console; font-weight: bold; background-color: #DD5555;">--</span> Unsubscribed &nbsp; &nbsp; 
<br><br></thead>
<tr><th>Action</th><th>Jour</th><th>Heure</th><th>Login</th><th>Adresse IP</th><th>Système d'exploitation</th><th>Navigateur</th></tr>
<tr><td style="font-face: Courier New, Lucida Console; font-weight: bold;" align="center">=></td><td>11/05/2004</td><td>20:03</td><td>mout</td><td>192.168.0.22</td><td>Windows XP</td><td>Internet Explorer</td></tr>
________________________________________________________________


script à intégrer dans une page d'autentification par exemple :
________________________________________________________________
<?php
//detection des parametres de l'utilisateur :
$agent = $_SERVER['HTTP_USER_AGENT'];
/*  navigateur :  */
if ($agent == "") {  }
elseif (eregi("MSIE", $agent)) {  $nav="Internet Explorer"; }
elseif (eregi("Mozilla", $agent)) { $nav = "Netscape"; }
else { $nav = "Autres"; }
if ($agent == "") { }

/*  WINDOWS  */
elseif (eregi("Windows", $agent))
{
        if(eregi("95", $agent)) { $os = 'Windows 95'; }
        elseif (eregi("98; Win 9x", $agent)) { $os = 'Windows Me'; }
        elseif (eregi("98", $agent)) { $os = 'Windows 98'; }
        elseif (eregi("NT 5.0", $agent)) { $os = 'Windows 2000'; }
        elseif (eregi("NT 5.1", $agent)) { $os = 'Windows XP'; }
        elseif (eregi("NT", $agent)) { $os = 'Windows NT'; }
        else { $os = 'Autres Windows'; }
}

/*  LINUX  */
elseif (eregi("linux", $agent)) { $os = 'Linux'; }

/*  BEOS  */
elseif (eregi("beos", $agent)) { $os = 'BeOS'; }

/*  AUTRE  */
else { $os = 'Autres'; }

$ip=$_SERVER["REMOTE_ADDR"];

/*------------------------------------------*/

	$filename = "log.html";
	$file = fopen($filename, "r");
	$log_avant = fread($file, filesize($filename));
	fclose($file);
	$file = fopen($filename, "w");
	$color = "#FFFFFF"; //couleur d'arriere plan de la ligne en cours (est changé chez moi selon le type de connexion (simple, inscription ou desinscription)
	$log_apres = $log_avant."<tr style=\"background-color: $color;\"><td style=\"font-face: Courier New, Lucida Console; font-weight: bold;\" align=\"center\">=></td><td>".date("d/m/Y")."</td><td>".date("H:i")."</td><td>$login</td><td>$ip</td><td>$os</td><td>$nav</td></tr>\r\n";
	fwrite($file, $log_apres); 
	fclose($file);
?>

 Conclusion

La fin de la page html est volontairement laissée ouverte (pas de </body></html> ni de footer) car on y rajoute directement les lignes...


 Sources du même auteur

CLASSE MYSQL SIMPLE (ABSTRACTION DES REQUÊTES SQL)
Source avec Zip MINI LISTE GÉNÉRIQUE AFFICHANT UNE TABLE MYSQL ET PERMETTANT...
Source avec Zip MINI LISTE DE COURSES SIMPLE MAIS EFICACE EN UN SEUL SCRIPT ...
LISTE DES ANNIVERSAIRES POUR LES N PROCHAINS JOURS, DANS L'O...
MINI PARSER DE LOG QUAKE 3 (BASEQ3/GAMES.LOG) : MAP ET SCORE...

 Sources de la même categorie

Source avec Zip Source avec une capture PHP INFOS SHOUTCAST par jules87
Source avec Zip Source avec une capture ESPACE MEMBRE VERSION 3 EN PHP 5 par JejeScript
Source avec Zip SAUVEGARDE ADRESSE IP VISITEUR par michael33512
FONCTION DE REDIRECTION par monpoke
Source avec Zip TCHAT PHP5, JAVASCRIPT->AJAX par JejeScript

Commentaires et avis

Commentaire de Guillaume170194 le 04/05/2011 23:38:53 9/10

Merci pour ce code

J'aimerai récupérer le nom et prénom du visiteur grâce à une fenêtre en javascript ou autre
Comment faire ?

Merci

Commentaire de Guillaume170194 le 04/05/2011 23:40:58

Désolé

J'ai oublié de demander une astuce pour éviter que dans le fichier log il y est plusieur fois la même adresse ip. Car autrement il est très long le fichier

Merci et excuser moi pour le double message

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Juin 2013
LMMJVSD
     12
3456789
10111213141516
17181920212223
24252627282930

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,607 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales