Foros del Web » Programando para Internet » PHP »

checkbox y base de datos

Estas en el tema de checkbox y base de datos en el foro de PHP en Foros del Web. Hola, tengo un problema y no se como solucionarlo. Consultando a una base de datos muestro un formulario con opciones que inicialmente eran de tipo ...
  #1 (permalink)  
Antiguo 14/03/2007, 02:58
Avatar de chascon  
Fecha de Ingreso: diciembre-2004
Mensajes: 231
Antigüedad: 19 años, 4 meses
Puntos: 0
checkbox y base de datos

Hola, tengo un problema y no se como solucionarlo.
Consultando a una base de datos muestro un formulario con opciones que inicialmente eran de tipo "RADIO", pero ahora necesito que sean "CHECKBOX" para poder seleccionar mas de 1 alternativa. para cambiarlo a checkbox solo se le cambia el TYPE="radio" a ---->> TYPE="checkbox" y listo, pero mi problema es otro, colocare todo para poder explicarme de mejor manera, asi armo el formulario con los checkbox:

Código PHP:
<form method="POST" action="votar.php" name="votacion">
<?
$sql 
"select * from pm_vot_opciones where vot_id=$_GET[vot_id]";
$db->query($sql);
while(
$nov $db->fetch()){
// opc_id = id de la opcion
?>
<INPUT TYPE="checkbox" NAME="opcion"  VALUE="<?=$nov[opc_id]?>"><?=$nov[opciones]?><br>
<? 
}
<
input type="hidden" name="vot_id" value="<?=$_GET[vot_id]?>">
<
input type="submit" name="procesar" value="Votar" class="boton">
?>
</form>
Ahora mi problema es como recibir las casillas selecionadas, supongamos que el formulario se forma con 5 opciones que se tomaron de la BD y yo seleciono la opcion 2 y la 5 con los checkbox y presiono "Votar"

al presionar el boton me llega por post la variable $vot_id quien me dice a q encuesta pertenecen las opciones, osea en donde debo ingresar datos en la BD.
En lo q tengo el problema es como saber que se selecciono la opcion 2 y 5 por ejemplo, para ingresar en la BD lo q sea necesario y poder usarlos por separado, osea, tomar la opcion 2 que se seleciono y hacer todos los procesos que quiera para ese valor (insert, update, etc.), y despues tomar la opcion 5 y hacer lo mismo.

El numero de opciones varia segun la encuenta, no siempre seran 5 opciones.

Bueno, si me pudieran ayudar en esto se los agradeceria, por que no se me ocurre como y lo necesito urgente.


gracias desde ya. =)
  #2 (permalink)  
Antiguo 14/03/2007, 05:33
 
Fecha de Ingreso: noviembre-2006
Mensajes: 146
Antigüedad: 17 años, 5 meses
Puntos: 1
Re: checkbox y base de datos. F1, F1, F1!!!

Buenas!
Los grupos de checkboxes han de tener el mismo nombre, y ademas has de especificar que se trata de una cadena para que mande todos los valores.
Código HTML:
<input type="checkbox" name="nombre[]" value="valor1">Valor 1
<input type="checkbox" name="nombre[]" value="valor2">Valor 2
<input type="checkbox" name="nombre[]" value="valor3">Valor 3
...
así, si seleccionas los tres, $nombre será: nombre[1]="valor1", nombre[2]="valor2" y nombre[3]="valor3"
No sé si será eso lo que buscabas...
Saludos!

Última edición por Nexus_; 14/03/2007 a las 05:44
  #3 (permalink)  
Antiguo 14/03/2007, 09:14
Avatar de chascon  
Fecha de Ingreso: diciembre-2004
Mensajes: 231
Antigüedad: 19 años, 4 meses
Puntos: 0
Re: checkbox y base de datos. F1, F1, F1!!!

sip, pero por ejemplo, si quiero mostrar todos los que me llegaron, como lo hago?
coloque esto y no me funciona:

while(isset($_POST['opcion'])){
echo "opciones : ".$_POST['opcion']."<br>";
}

me tira esto:

opciones : Array
opciones : Array
opciones : Array
opciones : Array
opciones : Array
opciones : Array
...

como lo tengo q hacer para q me los liste??

Gracias por la respuesta.

=)
  #4 (permalink)  
Antiguo 14/03/2007, 09:20
Avatar de gerson  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 481
Antigüedad: 19 años, 2 meses
Puntos: 4
Re: checkbox y base de datos. F1, F1, F1!!!

Hola chascon prueba esto:

Código PHP:
for($i=0;$i<sizeof($_POST['opcion']);$si++){
echo 
"opciones : ".$_POST['opcion'][$si]."<br>";

Salu2
__________________

  #5 (permalink)  
Antiguo 14/03/2007, 12:05
Avatar de chascon  
Fecha de Ingreso: diciembre-2004
Mensajes: 231
Antigüedad: 19 años, 4 meses
Puntos: 0
Re: checkbox y base de datos. F1, F1, F1!!!

Gerson, me funciono perfecto, muchas gracias a los 2, no saben como me han ayudado!!

hay un pequeño error en el nombre de una variable, lo corregi por si alguien le sirve y no se da cuenta, asi queda:

Código PHP:
for($i=0;$i<sizeof($_POST['opcion']);$i++){
echo 
"opciones : ".$_POST['opcion'][$i]."<br>";

ahora me queda otra cosas por solucionar, pero primero buscare en el foro antes de preguntar.

thx!!
  #6 (permalink)  
Antiguo 14/03/2007, 12:08
Avatar de gerson  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 481
Antigüedad: 19 años, 2 meses
Puntos: 4
Re: checkbox y base de datos. F1, F1, F1!!!



Si que estoy con ganas de fallar poner "$si" ....
__________________

  #7 (permalink)  
Antiguo 14/03/2007, 12:42
 
Fecha de Ingreso: noviembre-2006
Mensajes: 146
Antigüedad: 17 años, 5 meses
Puntos: 1
Re: checkbox y base de datos. F1, F1, F1!!!

xD
De nada chascon, para eso estamos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:05.