you would need to name each check box sperately and track them seperately unless you want to come up with a method to "code" the results into 1 frield maybe using BITS and also to "decode" the field to reset each field... as far as resetting the fields on form load...
while(list($key, $val) = each($_POST))
{
echo "<input type='checkbox' name='$key' value='$key'";
if ($val) { echo "checked"; }
echo ">$key<br>";
}
this would build a list of checks boxes
with the value as the name of the box, and the caption as the name of the box, and if the value was set... it would reset it as checked
note: you could apply a similiar method to a query it would just be more like
while($row = mysql_fetch_assoc($result))
{
list($key, val) = $row;
.....
}