Rescatar varios checkbox desde un form

José Miguel Vidal Lavín jmvidal en sertotal.cl
Jue Ene 8 17:28:08 CLST 2004


muchas gracias, funcionó impecable

b en guliv.cl wrote:

>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
>>
>>    
>>
>
>  
>

-- 
Jose Miguel Vidal Lavin     	User #333809 http://couter.li.org
Departamento de Informática  		           Fono : 6764600
Cobranzas y Servicios Afines		                  6764622
Bulnes 317, Oficina 612