Rescatar varios checkbox desde un form
b en guliv.cl
b en guliv.cl
Jue Ene 8 17:23:25 CLST 2004
Segun veo ... me da la impresion que hay un serio problema
si quieres hacer selecciones multiples usa checkbox, si quieres hacer
selecciones excluyentes usa radio
ejemplo
<html>
<body><form>
<input type="checkbox" name="a1" value="1">
<input type="checkbox" name="a2" value="2">
<br>
<input type="radio" name="a" value="1">
<input type="radio" name="a" value="2">
</form>
</body>
<html>
ahora ... respecto al problema de José Miguel veamos que lo he hecho yo en
algunas ocaciones
while ($dato=mysql_fetch_array($query))
{
$i++;
echo "<tr><td>\n"
."<input type=\"checkbox\" name=\"opcion_$i\" value=\"$dato[Campo1]\">\n"
."</td></tr>\n";
}
esto generaria algo asi mas o menos
<tr><td>
<input type="checkbox" name="opcion[1]" value="1">
</td></tr>
<tr><td>
<input type="checkbox" name="opcion[2]" value="2">
</td></tr>
<tr><td>
<input type="checkbox" name="opcion[3]" value="3">
</td></tr>
y finalmente para rescatar estos valores puede hacer algo mas menos asi
<?php
for($i=0; $i< cuont($opcion), $i++)
{
echo "el valor de $i es: ".$opcion[$i]."<br>\n";
}
y finalmente te queria hacer una acotacion ... en vez de hacer esto
print ("<b>algo de texto en negritas<br>");
print ("algo de texto en negritas<br>");
print ("algo de texto en negritas<br>");
print ("algo de texto en negritas</b><br>");
has esto
print ("<b>algo de texto en negritas<br>"
."algo de texto en negritas<br>"
."algo de texto en negritas<br>"
."algo de texto en negritas</b><br>");
lo ultimo a mi me acomoda bastante y se ve ordenado ... no se UDs.
/**************************\
* Boris Cruchet C. *
* Co-Fundador GULiV *
* Linux Counter 279256 *
\**************************/
> Creo que no lo tienes claro.
>
> Si tus checkbox tienen el mismo nombre, entonces cuando leas el valor de
> ese nombre te entregara _UN_ solo valor. El valor del checkbox que esta
> en checked.
>
> Para que tengas varios valores tienes que asignarles distintos nombres.
>
> El jue, 08-01-2004 a las 16:27, José Miguel Vidal LavÃn escribió:
>> eso me queda claro pero cuando tengo muchos chekbox con el mismo nombre
>> no se me devuelve como un arreglo?
>> lo que pasa es que el código HTML lo genero leyendo datos desde una DB:
>>
>>
>> while ($row = mysql_fetch_array($result))
>> {
>> print( "<tr>\n" );
>> print( "<input name='num_operacion' type='Hidden'
>> value=$row[0]>" );
>> print( "<td bgcolor = " . $color . "><font size=2><input
>> name='factura' type='Checkbox' value=$row[0]></td>\n" );
>> print( "<td bgcolor = " . $color . "><font size=2>" . $row[0] .
>> "</td>\n" );
>> print( "<td bgcolor = " . $color . "><font size=2>" . $row[1] .
>> "</td>\n" );
>> print( "<td bgcolor = " . $color . "><font size=2>" . $row[2] .
>> "</td>\n" );
>> print( "<td bgcolor = " . $color . "><font size=2>" . $row[3] .
>> "</td>\n" );
>> print( "<td bgcolor = " . $color . "><font size=2>" . $row[4] .
>> "</td>\n" );
>> print( "<td bgcolor = " . $color . "><font size=2>" . $row[5] .
>> "</td>\n" );
>> print( "<td bgcolor = " . $color . "><font size=2>$" .
>> number_format($row[6], 0, '.', ',') . "</td>\n" );
>> print( "<td bgcolor = " . $color . "><font size=2>" . $row[7] .
>> "</td>\n" );
>> print( "</tr>\n" );
>> }
>>
>> entonces no podré leer desde el otro lado n checkbox, es ese el
>> problema.
>>
>> gracias
>>
>> Mauro A. Morales M. wrote:
>>
>> >Si la seleccion de los checkbox es _unica_ entonces los checkbox deben
>> >llevar el mismo nombre con distintos values.
>> >
>> >Si la selccion es multiple entonces llevan distintos nombres con
>> >disintos values.
>> >
>> >EJ:
>> >
>> ><input type=checkbox name=check1 value=0>
>> ><input type=checkbox name=check1 value=1>
>> >
>> >Asi cuando eligas, solo te va a permitir eligir 1.
>> >
>> >Desdel el PHP que recibe el valor, $unico = $_POST['check1']
>> >
>> >Para el segundo caso, EJ:
>> >
>> ><input type=checkbox name=check1 value=0>
>> ><input type=checkbox name=check2 value=1>
>> >
>> >Asi, te permitira elegir los dos, si es el caso.
>> >
>> >Desdel el PHP que recibe el valor;
>> >$primero = $_POST['check1']
>> >$ segundo = $_POST['check2']
>> >
>> >Saludos,
>> >
>> >
>> >
>> >
>> >El jue, 08-01-2004 a las 15:35, José Miguel Vidal LavÃÂn
>> escribió:
>> >
>> >
>> >>Señores
>> >>
>> >> Hago mi primer participación en este mailing list que ha estado
>> un
>> >>poco lento en movimientos asi que aprovecho de pedirles su ayuda en un
>> >>problema muy trivial que tengo pero que no he podido resolver.
>> >>No me habia tocado el caso actual ni tanpoco tengo mucha experiencia
>> en
>> >>php, el problema es el siguiente:
>> >>
>> >>tengo generado un formulario con varios chekbox que debo seleccionar
>> >>para realizar operaciones a solo los registros que el usuario ha
>> >>marcado, mando la información via POST y no se recuperar cuales
>> checkbox
>> >>fueron los seleccionados ni con que valor fueron enviados, alguien me
>> >>puede orientar?, si necesitan mas información sobre mi problema se
>> los
>> >>enviaré.
>> >>
>> >>saludos y gracias de antemano.
>> >>
>> >>
> --
> Mauro A. Morales M. Adsum S.A, Santiago - Chile
> mailto:mmorales[@]adsum.cl http://www.adsum.c
>