// ********* What is visitor ip adress ? and actual time ? ********* $ip = $_SERVER["REMOTE_ADDR"]; $time=(date("H") * 60) + date("i"); $ip_exist=FALSE; // ********* Open the file and read data ********* $fd = fopen($_SERVER['DOCUMENT_ROOT']."/trtphp/compteur/infos/compteur.txt","r+"); $param = fscanf($fd, "%d\t%s\t%d\n"); list ($count, $date, $interval) = $param ; $interval=60; if($date==date("d/m/y")) { // The day have not changed $ptr=ftell($fd); while ($param = fscanf($fd,"%d\t%s\n")) { list ($time_buffer,$ip_buffer) = $param ; if($ip_buffer==$ip) { $ip_exist=TRUE; if($time>$time_buffer+$interval) { // If ip address exists & interval is reached, update time access $count++; fseek($fd,$ptr); fputs($fd,sprintf("%04d\t%s",$time,$ip)); fseek($fd,0); fputs($fd,sprintf("%d\t%s\t%d",$count, $date, $interval)); break; } } $ptr=ftell($fd); } if(!$ip_exist) { // If ip address not exists, create entry $count++; fseek($fd,0,SEEK_END); fputs($fd,sprintf("%04d\t%s\n",$time,$ip)); fseek($fd,0); fputs($fd,sprintf("%d\t%s\t%d",$count, $date, $interval)); } } else { // The day has changed, recreate the file in saving count value // save also ip address list $fdbis = fopen($_SERVER['DOCUMENT_ROOT']."/trtphp/compteur/infos/totalcount.txt","a"); while ($param = fscanf($fd,"%d\t%s\n")) { list ($time_buffer,$ip_buffer) = $param ; { $hour=$time_buffer/60; $minute=$time_buffer%60; fputs($fdbis,sprintf("%s\t%02d:%02d\t%s\n", $date,$hour,$minute,$ip_buffer)); } } fclose($fdbis); fclose($fd); $count++; $fd = fopen($_SERVER['DOCUMENT_ROOT']."/trtphp/compteur/infos/compteur.txt","w"); fputs($fd,sprintf("%d\t%s\t%d\n",$count,date("d/m/y"), $interval)); fputs($fd,sprintf("%04d\t%s\n",$time,$ip)); fclose($fd); } ?>
Informations sur les évolutions des versions de Gestion Labo© |
Version 1.6 Modification de la gestion des comptes utilisateurs. Divers correctifs. |
Version 1.5 Divers correctifs de la structure du logiciel. |
Version 1.4 Intégration du matériel personnel simplifiée. Possibilité de modifier le domaine et la catégorie pour n'importe quel matériel créé. |
Version 1.3.2 Possibilité de trier le matériel avant impression. |
Version 1.3 Possibilité d'imprimer de manière simple la liste de matériel. Possibilité d'afficher le matériel en alerte quantité et/ou péremption. |
Version 1.2 Possibilité d'affecter un seuil d'alerte pour la quantité du matériel. |
Version 1.1 Possibilité d'ajouter une date de réception / d'achat. Possibilité de créer un lien visiteur intra-établissement et un lien visiteur pour public internet distincts. Renforcement de la sécurité des sessions. |