Questa è la parte di form che può interessare (si trova all'interno di un while):
<td class='$tipor'><input type='checkbox' name=check[]</td>
<input type='hidden' name=id[] value='$id'>
<input type='hidden' name=contatore[] value='$contatore'>

I due array contengono correttamente i valori (ho provato a stamparli). Nella pagina successiva devo cancellare i record con l'ID corrispondente. Il problema è che non lo fa. La variabile $num risulta =1 (indipendentemente da quanti valori contengano gli array) e quindi riporta il messaggio "operazione eseguita correttamente". In ogni caso, però, nel db non cancella nulla.

Edit: la variabile $check si riferisce ai checkbox che vanno spuntati accanto ai record (in modo da stabilire quali tra i record mostrati devono essere eliminati). Quindi se vale 1 deve essere eliminato

Codice PHP:
for($i=0;$i<sizeof($contatore);$i++){
  if(
$check[$i]==1){
    
$q "DELETE FROM Valutazioni WHERE ID=$id[$i]";
    
$query=mysql_query($q) or die(mysql_error());
        
$num=mysql_num_rows($query);
  }
}

if(
$num>0)
          echo 
"<tr><td align='center'><font color='blue'>Operazione eseguita correttamente. Sono stati eliminati $num campi di voto.</font></td></tr>";
    else
      echo 
"<tr><td align='center'><font color='blue'>Errore nell'eliminazione.
Ritentare l'operazione.</font></td></tr>"