#!/usr/bin/perl -Tw use strict; # Modifier le chemin de l'interpreteur sous Unix si necessaire #### CONFIGURATION #### ## Adresse du compteur my ($adr) = '/tmp/compteurtmp.txt'; ## Valeur d'origine du compteur my ($origine) = 0; ## Afficher ou pas le resultat du compteur my ($affichage) =1; #### #### sub incremente { my($AdrCompteur) =@_; my($nb); if (-e $AdrCompteur) { # Lecture de la valeur open(A,$AdrCompteur) || return 0; eval { flock(FILE,2); }; $nb=; eval { flock(FILE,8); }; close(A); eval { flock(FILE,2); }; } else {$nb = 0;} # Incrementation $nb++; # On recopie la nouvelle valeur eval { flock(FILE,8); }; open(Z,">$AdrCompteur") || return 0; eval { flock(FILE,2); }; print Z $nb; eval { flock(FILE,8); }; close(Z); return $nb; } #### my($retour) = &incremente($adr); if ($retour == 0) { print "Content-Type: text/html\n\n"; print "Erreur a l'ecriture du compteur"; } elsif ($affichage == 1) { print "Content-Type: text/html\n\n"; print $retour; }