Sto tentando di creare un modulo per la gestione utenti di cui riporto il codice.
Ho creato una stringa per approvare la registrazione tramite link inviato via email. Il tutto scade dopo 24 ore.
Ora sto creando una procedura per cancellare i record degli utenti che non hanno fatto l'attivazione entro le 24 ore.
In pratica estraggo i dati, li passo tutti e se trovo un record dove la conferma è uguale a 0 e il timestamp è superiore a 24 ore cancello il record.
Il problema è che quando trova un record da cancellare e lo cancella mi esce il seguente messaggio:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in wwwroot/registrazione.php on line 103
La query viene eseguita correttamente ma esce il warning. C'è un modo per gestire la cosa evitando il warning?
Grazie
Codice PHP:
$sql= @mysql_query('SELECT * FROM utenti') or exit ('
Erore durante l\'interrogazione</p>' . mysql_error());
$timeAttuale = time();
while($row = mysql_fetch_array($sql)){
$id = $row['id'];
$conferma = $row['conferma'];
$timestamp = $row['timestamp'];
//Se l'utente non è confermato e il tempo è scaduto cancello il record
if($conferma==0 && $timeAttuale >= ($timestamp + $tempoLimiteConferma)){
$query = 'DELETE FROM utenti WHERE id=' . $id;
$sql= @mysql_query($query) or exit ('
Erore durante l\'interrogazione</p>' . mysql_error());
}
}