non avevo capito.....
se ti servono anche i valori non selezionati devi fare degli hidden come stavi facendo e ciclare quello
altrimenti puoi fare
<input name="acquistato[<?php echo $row_acquisti['id']; ?>]" type="checkbox" id="acquistato[<?php echo $row_acquisti['id']; ?>]" value="<?php echo $row_acquisti['valore']; ?>" />
foreach($acquistato as $key => $value){
echo "id: {$key}, valore: {$value}";
}
in questo modo mantieni l'accoppiata id/valore con un campo solo
ciao