contatore visite resettato
Il mio contatore visite ogni tanto si resetta, è capitato più volte, ma non riesco a spiegarmi perchè!il codice è questo:
Codice PHP:
<?php
function scrivi($f,$var,$nome){
$file=fopen($f,"w");
fwrite($file,"<?\n$nome=".var_export($var,true).";\n?>");
fclose($file);
}
function controlla($f){
if(!file_exists($f)){
$file=fopen($f,"w");
fclose($file);
}
}
$pagi="http://" . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'];
if(!isset($contatore)){
$contatore="contatore.txt";
}
if(!isset($a)){
$a="prova@prova.it";
}
$da="\"Carlo\"<karl8@tiscali.it>";
if($r=="3.14159265358979"){
$file=fopen($contatore,"w");
fwrite($file,0);
echo"Contatore azzerato<br>";
}else if($r=="0"){
$pag="http://" . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] . "?r=3.14159265358979&contatore=$contatore";
$oggetto="azzeramento contatore $contatore";
$testo="È stata attivata la funzione di azzeramento del contatore $contatore, per confermarla clicca sul link $pag";
$testoh="È stata attivata la funzione di azzeramento del contatore $contatore, per confermarla clicca <a href=\"$pag\">qui</a>";
invmail($a,$oggetto,$testo,"from: $da",$testoh);
}else{
if(file_exists($contatore)){
$file=fopen($contatore,"r");
$conta=fread($file,filesize($contatore));
}else{
$conta=0;
}
$conta++;
$file=fopen($contatore,"w");
fwrite($file,$conta);
$file=fopen("da_".$contatore,"a");
fwrite($file,"$conta ° visita: ".date("H:i:s d/m/Y")." ip: ".$_SERVER['REMOTE_ADDR']." pagina di provenienza: ".$_SERVER['HTTP_REFERER']."\n");
controlla("giorni_$contatore");
require("giorni_$contatore");
$giorni[date("d/m/Y")]=$giorni[date("d/m/Y")]+1;
scrivi("giorni_$contatore",$giorni,"\$giorni");
if($vis=="img"){
settype($conta,"string");
$car=ImageCreateFromGif("immagini/numeri.gif");
$x=ImageSx($car)/10;
$y=ImageSy($car);
$lar=strlen($conta)*$x;
$alt=$y;
$vis=ImageCreate($lar,$alt);
for($i=0;$i<strlen($conta);$i++) {
$c=ord($conta{$i})-48;
ImageCopy($vis,$car,$i*$x,0,$c*$x, 0, $x, $y);
}
header("Content-Type: image/gif");
ImageGIF($vis);
ImageDestroy($vis);
ImageDestroy($car);
}
if(isset($ogni)&&$ogni!=""){
if ($conta % $ogni==0){
$oggetto="visitatori per il contatore $contatore";
$testo="n° di vitatori per il contatore $contatore=$conta.\nPer azzerarlo, clicca sul link $pagi?r=0&contatore=$contatore";
$testoh="n° di vitatori per il contatore $contatore=$conta.<br>\nPer azzerarlo, clicca <a href=\"$pagi?r=0&contatore=$contatore\">qui</a>";
invmail($a,$oggetto,$testo,"from: $da",$testoh);
}
}
}
fclose($file);
?>
Il contatore viene chiamato con il tag
Codice HTML:
<img src="http://www.karl94.altervista.org/conta.php?contatore=ponga_web.txt&ogni=&vis=img">