Ciao a tutti, ho realizzato questo script per creare un contatore, la tabella nel db è semplice ha solo 3 campi:

-------------------------------------------
pagine | visite | flag
-------------------------------------------
index.php | 2 | n
indexprogetti.php | 3 | n


Il mio obbiettivo è quello di incrementare il contatore solo al primo accesso di una pagina, quindi se ad esempio accedo su index.php si incrementa il contatore, il mio problema che non riesco a risolvere è che fatto il primo click non voglio piu che si incrementi sulla stessa pagina.

Calcolate che ad index gli passo ad esempio delle sottopagini quindi tipo index.php?pag=chisono

Codice PHP:
<?php
require_once('interDB.php');

$um interDB::getInstance();
$pagina basename($_SERVER['PHP_SELF']);

$user_active $um->getUserActive(); // Mi restituisce gli utenti attivi
$contatore $um->getContatore(); // Mi restituisce il contatore
$flag $um->getFlag(); // Mi restituisce il campo flag

if($pagina == 'indexstudio.php' && $flag == 'n'){
$updateContatore $um->putContatore();//incrementa il contatore e setta il campo flag 'a'
$contatore $um->getContatore();
  
}else{
$updateContatore2 $um->putContatore2();// Aggiorna il contatore e setta il campo flag 'n'
}
if(
$pagina == 'index.php' && $flag == 'n'){
$updateContatore $um->putContatore4();//incrementa il contatore e setta il campo flag 'a'
$contatore $um->getContatore2();
  
}else{
$updateContatore2 $um->putContatore3();// Aggiorna il contatore e setta il campo flag 'n'
}
if(
$pagina == 'indexprogetti.php' && $flag == 'n'){
$updateContatore $um->putContatore53();//incrementa il contatore e setta il campo flag 'a'
$contatore $um->getContatore33();
  
}else{
$updateContatore2 $um->putContatore43();// Aggiorna il contatore e setta il campo flag 'n'
}
echo 
'Utenti loggati:[b]'.$user_active.'[/b]
'
;
echo 
'Contatore accessi:[b]'.$contatore.'[/b]';

?>