Es un poco de logica, si ya tenias lo que necesitabas deberias pensar como solucionarlo.
Si tu problema es que solo es para un numero definido de checks, y tienes varios if que solo los diferencia un numero incrementable , deberias hacer un ciclo, y si tu problema es saber hasta cuando hacer tu ciclo, envia el total de checks en la funcion en tu caso creo te serviria la variable $cont
Cita: <script languaje="javascript">
function checkedAll(totalchecks)
{
for(i=1;i<=totalchecks;i++)
{
document.getElementById('check'+i).checked=documen t.getElementById('checkall').checked;
}
calcular(totalchecks);
}
function calcular(totalchecks)
{
for(i=1;i<=totalchecks;i++)
{
if (document.getElementById('check'+ i).checked==true)
{
document.getElementById('check'+ i).value=1;
document.getElementById('text'+ i).value=document.getElementById('check'+i).value;
}
else
{
document.getElementById('check'+i).value=0;
document.getElementById('text'+i).value=document.g etElementById('check'+i).value;
}
}
}
</script>
<?
$totalcheck="3";//aqui seria tu variable $cont o alguna variable que almacene el total de tus check en tu consulta
?>
<form action="respueta.php" method="post" name="uno" id="uno">
<p>
<input name="uno" type='checkbox' id="check1" onclick='calcular(<?echo $totalcheck?>)'/>
Cambia Value del checkbox:
<input name="uno" type="text" id="text1" />
<br />
<input name="dos" type='checkbox' id="check2" onclick='calcular(<?echo $totalcheck?>)'/>
Cambia value del checkbox:
<input name="dos" type="text" id="text2" />
<br />
<input name="tres" type='checkbox' id="check3" onclick='calcular(<?echo $totalcheck?>)'/>
Cambia Value del checkbox:
<input name="tres" type="text" id="text3" />
<br />
<input name="tres" type='checkbox' id="check4" onclick='calcular(<?echo $totalcheck?>)'/>
Cambia Value del checkbox:
<input name="tres" type="text" id="text4" />
<br />
<label>
<input name="submit" type="submit" id="submit" value="Enviar" />
</label>
</p>
<input type='checkbox' name='checkall' id="checkall" onclick='checkedAll(<?echo $totalcheck?>);'/>
</form>
el anterior te funciona para "n" cantidad de checks, dale una revisaba y no solo lo copies y pegues