Hola
djmourino:
Creo que tu problema es obteniendo los campos, por culpa de los corchetes, ¿no es así?
Lo que buscas se puede obtener con el siguiente código:
Código PHP:
<form name="miForm" action="destino.php" method="post" onsubmit="return validar(this, 3)">
<p>Escoja como mínimo 3 opciones por favor:</p>
<input type="checkbox" name="check[]" value='j' id="chk1" /><label for="chk1">uno</label>
<input type="checkbox" name="check[]" value='q' id="chk2"><label for="chk2">dos</label>
<input type="checkbox" name="check[]" value='q' id="chk3"><label for="chk3">tres</label>
<input type="checkbox" name="check[]" value='q' id="chk4"><label for="chk4">cuatro</label>
<input type="checkbox" name="check[]" value='q' id="chk5"><label for="chk5">cinco</label>
<input type="checkbox" name="check[]" value='q' id="chk6"><label for="chk6">seis</label>
<button type="submit">Enviar</button>
</form>
<script type="text/javascript">
<!--
function validar(f, minimosMarcados) {
//recogemos los campos
var chks = f["check[]"];
//contamos los que se han marcado
for(var i=0, contador=0; i<chks.length; i++)
if( chks[i].checked )
contador++;
if( contador >= minimosMarcados )
return true;
else {
alert("Debes marcar como mínimo "+minimosMarcados+" checkboxes, y has marcado "+contador);
return false;
}
}
// -->
</script>
Un saludo