/* * Si le fichier oĂč l'on stock, * les donnĂ©es n'existe pas encore * on le crĂ©e. */ $fichier = '.htcompteur'; if( !file_exists($fichier) ) { $fp = fopen($fichier, "w"); fwrite($fp, serialize(array())); fclose($fp); } /* * DĂ©finition de variables * nĂ©cessaire au compteur : * - deux termes constants, * - l'ip du visiteur, * - la date et l'heure. */ $argument_visites = 'visites'; $argument_requĂȘtes = 'requĂȘtes'; $ip = $_SERVER['REMOTE_ADDR']; $time = date('YmdGis'); /* * RĂ©cupĂ©ration des donnĂ©es du * compteur prĂ©cĂ©demment stockĂ©es. */ $lignes = file($fichier); $donnees = unserialize($lignes[0]); /* * Pour chaque clĂ©s du tableau de donnĂ©es * qui ne soit pas attribuĂ©e aux visite et aux requĂȘtes * si la valeur correspond Ă  une date antĂ©rieur * au mĂȘme jour, on supprime l'ip du visiteur. */ foreach( $donnees as $cle => $valeur ) { if( substr($valeur, 0, 8) != substr($time, 0, 8) && $cle != $argument_visites && $cle != $argument_requĂȘtes ) { unset($donnees[$cle]); } } /* * On incrĂ©mente ( ajoute +1 ) la valeur * du nombre de requĂȘtes. * Si l'ip n'est pas encore enregistrĂ©e, * on incrĂ©mente la valeur du nombre de visites * et on ajoute l'ip dans le tableau accompagnĂ© * de la date et de l'heure de l'exĂ©cution. */ $donnees[$argument_requĂȘtes]++; if( !$donnees[$ip] ) { $donnees[$argument_visites]++; $donnees[$ip] = $time; } /* * On effectue un petit report de variable * pour une utilisation ultĂ©rieur plus aisĂ©e. */ $nb_visiteurs = $donnees[$argument_visites]; $nb_aujourdhui = count($donnees)-2; $nb_requĂȘtes = $donnees[$argument_requĂȘtes]; /* * On stock le tableau dans le fichier de donnĂ©es * en Ă©crasant sa valeur prĂ©cĂ©dente. */ $fp = fopen($fichier,"w"); fwrite($fp, serialize($donnees)); fclose($fp); /* * On affiche les rĂ©sultats du compteur. */ echo $nb_visiteurs." visiteurs dont "; echo $nb_aujourdhui." aujourd'hui, "; echo $nb_requĂȘtes." pages affichées"; $date=getdate(); function date_francais($date){ $jour{0} = "dimanche"; $jour{1} = "lundi"; $jour{2} = "mardi"; $jour{3} = "mercredi"; $jour{4} = "jeudi"; $jour{5} = "vendredi"; $jour{6} = "samedi"; $mois{1} = "janvier"; $mois{2} = "février"; $mois{3} = "mars"; $mois{4} = "avril"; $mois{5} = "mai"; $mois{6} = "juin"; $mois{7} = "juillet"; $mois{8} = "août"; $mois{9} = "septembre"; $mois{10} = "octobre"; $mois{11} = "novembre"; $mois{12} = "décembre"; $jourfr=$jour{$date['wday']}; //$jourfr=ucfirst($jourfr); $jour = $date['mday']; $mois_cf = $date['mon']; $moisfr = $mois{$mois_cf}; //$moisfr=ucfirst($moisfr); $annee = $date['year']; $date_en_francais = "$jourfr $jour $moisfr $annee"; return $date_en_francais; } echo " || ".@date_francais($date); ?>