<?php
// connessione al database MySQL
mysql_connect("asd", "asd", "asd");
mysql_select_db("my_asd") or die("Impossibile selezionare il database.");
$ip = $_SERVER['HTTP_REFERER'];
$pagina_num = 1;
$pagina = $_SERVER['PHP_SELF']; //potrebbe farti comodo per sapere il nome della pagina es gioco_primo.php
$ora = time(); //leggo il momento della visita quindi
//dati di connessione
$query_1 = mysql_query("SELECT * FROM contatore WHERE pagina_num = $pagina_num AND ip = '$ip'");
if(mysql_num_rows($query_1)== 0){ //non ci sono record per quell'ip e quella pagina
$query_2 = mysql_query("INSERT INTO contatore(pagina, pagina_num, ip, visite, tempo)
SET('$pagina', '$pagina_num', '$ip', 1, '$ora')");
}else{ //il record esiste
$riga = mysql_fetch_array($query_1);
//verifico l'intervallo di tempo tra l'ultima visita e l'attuale
//e lo trasformo in ore
$intervallo = ($ora - $riga['tempo'])/3600;
//verifico che siano passate almeno 24 ore dall'ultima visita (ma a te decidere il tempo)
if($intervallo > 24){ //sono passate più di 24 ore quindi uppo le visite e il tempo, altrimenti non faccio nulla
$query_3 = mysql_query("UPDATE contatore SET visite = visite +1, tempo = $ora WHERE pagina_num = $pagina_num AND ip = '$ip'");
}
}
//dati di connessione
$query = mysql_query("SELECT pagina, SUM(visite) AS tot FROM contatore GROUP BY pagina");//o pagina_num se non usi il nome di pagina
echo "<table>";
echo "<tr><td>pagina</td><td>visite</td></tr>";
while($riga=mysql_fetch_array($query)){
$pagina=$riga['pagina'];
$visite=$riga['tot'];
echo "<tr><td>$pagina</td><td>$visite</td></tr>";
}
echo "</table>";
mysql_close()
?>