$filex = "v_count.txt"; //file conteggio visite
$file1 = "v_ip.txt"; // file elenco IP x conteggio visite
$fileu = "u_ip.txt"; // file elenco IP x conteggio utentionline
$sd = time(); // timestamp
$rip = $_SERVER['REMOTE_ADDR']; // IP-utente
$open = fopen($filex, "r"); //apre file in lettura
$count = fread($open, filesize($filex)); //legge valore visite
$count1 = $count+1; //incrementa valore
fclose($open); //chiude
$lines = file($file1); //legge file elenco IP in array
foreach ($lines as $line_num => $line) //scansiona array
{
//echo $line;
$fs = strpos($line,'"')+1; //cerca "
$fe = strpos($line,'"',$fs); //cerca ancora "
$rd = substr($line,$fs,($fe-$fs)); //legge data
//echo "data >$rd<
";
break;
}
$deltat = $sd-$rd;
if($deltat>3600) //nuova data 60x60=3600 sec/h
{
$open2 = fopen($file1, "w"); //apre in scrittura file elenco ip
fwrite($open2, "TIMESTAMP= \"$sd\""); //scrive data corrente
fwrite($open2, "\n*$rip*"); //scrive ip-utente
fclose($open2); //chiude file
$open = fopen($filex, "w"); //apre in scrittura file conteggio
fwrite($open, $count1); //scrive numero visite
fclose($open); //chiude file
$count = $count1;
}
else //stessa data
{
$open2 = fopen($file1, "r"); //apre in lettura file elenco ip
$ips = fread($open2, filesize($file1)); //legge tutto il file
if (!strpos($ips,"*$rip*")) // cerca ip corrente
{
$open = fopen($filex, "w"); //apre in scrittura file conteggio
fwrite($open, $count1); //scrive numero visite
fclose($open); //chiude file
$count = $count1;
$open3 = fopen($file1, "a"); //apre in aggiunta file elenco ip
fwrite($open3,"\n*$rip*");
fclose($open3);
//echo($rip);
} ;
fclose($open2); //chiude file
}
// UTENTI ON LINE -
$ucount = 1; //contatore utenti
$lines = file($fileu); //apre file in array
$line2 = ""; //stringa elenco IP/timestamp
foreach ($lines as $line_num => $line) //per ogni riga del file
{
//echo $line."
";
$fp = strpos($line,'****'); //cerca '****'
$nam = substr($line,0,$fp); //estrae IP
$sp = strpos($line,'++++'); //cerca '++++'
$val = substr($line,$fp+4,$sp-($fp+4)); //estrae timestamp
$diff = $sd-$val; //tempo trascorso in secondi
if($diff < 3600 && $nam != $rip) //se diff<300sec e IP<>ip-utente 60X60=3600
{
$ucount = $ucount+1; //incrementa conteggio
$line2 = $line2.$line; //aggiunge record valido
// echo $line2;
}
}
$my = $rip."****".$sd."++++\n"; //costruisce riga utente corrente
$open1 = fopen($fileu, "w"); //apre file in scrittura
fwrite($open1,"$line2"); //riscrive records ancora attivi
fwrite($open1,"$my"); //aggiunge ip corrente
fclose($open1); //chiude file
//echo "document.write('Visitt' + '$deltat');";
echo "document.write('
Utenti online : $ucount | Visite : $count |