Hi,
Das mag jetzt eigenwillig anmuten, aber der Sinn an der Sache ist, durch ungeprüfte Usereingaben (in nicht so kritischen Formularen) beim "Affenmachen" keinen invaliden Code zu produzieren.
<input type="checkbox" name="check[1]" value="checked" checked="<?php echo check[1]; ?>">
ob ein leeres checked-Attribut valide ist, weiß ich auch nicht. Aber mit
<input type="checkbox" name="check[1]" value="irgendwas"<?php if (isset($_POST['check'][1])) { echo ' checked="checked"'; } ?> />
stellen sich deine Fragen nicht und das Formular bleibt universell.
Gruß,
Andreas.