Ciao a tutti.
E' da un bel pò che ho sviluppato per necessità questa condizione basata sul tempo, ma mi ha sempre fatto difetto e nn sono mai riuscito a correggerla definitivamente!

Io ho 2 pag; la prima si trova la condizione di tempo che darà o no l'accesso alla funzione che sta nella seconda pagina.

1)La funzione oltre al suo codice ha questo che serve per la condizione:
Codice PHP:
$query "UPDATE pgu SET [b]Attacco = Time()[/b] WHERE Nick='$row[Nick]'"$result mysql_query($query$db); 
2)Una volta terminata la funzione, per potervi accedere bisogna passare la condizione che è stata aggiornata da questa query sopra.

Codice PHP:
$query "SELECT Nick,Stato,Simbolo,UNIX_TIMESTAMP(Attacco) AS Attacco,Ultima_Arma,Salute FROM pgu WHERE Nick='$user_id'"$result mysql_query($query$db);
$wer mysql_fetch_array($result);

if((
time() - $wer[Attacco]) > 45)  { include('attacca1.php'); } else { echo "<font color=green>[b]Non puoi ancora attaccare! Mancano"; echo ($arm[Gap] - (time() - $wer[Attacco])); echo "secondi [url='scrivi.php']Indietro[/url]</font>[/b]"; } 
Come potete facilmente capire la condizione dice: se "l'orario attuale - l'orario dell'ultimo aggiornamento" sono maggiori di 45(quindi sono trascorsi 45 sec dall'aggiornamento) allora includi la seconda pagina altrimenti blocca la funzione!

Perchè mi fa difetto?
Spesso non me la blocca, altre volte i secondi che mancano si moltiplicano sempre.
O provato anche NOW() al posto di Time() ma è uguale!
Chi mi aiuta?