Ver Mensaje Individual
  #3 (permalink)  
Antiguo 31/05/2011, 11:30
Avatar de Flakiss
Flakiss
 
Fecha de Ingreso: septiembre-2009
Mensajes: 113
Antigüedad: 14 años, 7 meses
Puntos: 1
Respuesta: insertar varios checkbox al tiempo en una tabla

hola,

cuando muestres las ciudades por pantalla, imagino utilizas un ciclo para imprimirlas
dentro del ciclo imprimes algo asi

while($datos = mysql_fetch_array($sql)){

<input type="checkbox" name="ciudades[]" id="ciudad" value=<?php echo $dato["idciudad"];?>"> <?php echo $dato["nombreciudad"]; ?>

}

al hacerlo asi, generas un input que sera un array, entonces cuando lo llames para insertarlo lo haces asi:

$ciudades = $_POST["ciudades"];

lo recorres con un ciclo foreach o for como te acomode mas.


Ahora si no utilizas un ciclo para imprimir las ciudades en pantalla, lo haces asi por cada ciudad


<input type='checkbox' name='ciudades[]' id='ciudad' value='1'>Ciudad 1
<input type='checkbox' name='ciudades[]' id='ciudad' value='2'>Ciudad 2
<input type='checkbox' name='ciudades[]' id='ciudad' value='3'>Ciudad 3
<input type='checkbox' name='ciudades[]' id='ciudad' value='4'>Ciudad 4

en el value tu manejas el dato que quieras usar mas adelante, si te acomoda puedes dejar en el value el nombre de la ciudad o el id.


y al insertarlo funciona igual que el otro, lo recorres con un ciclo.
ahi ves tu, si quieres insertar cada ciudad asociada al usuario en otra tabla, metes el insert into dentro del ciclo que recorre las ciudades.
si deseas generar una variable con los id de las ciudades separadas con ";" y eso lo insertas en tu unica tabla de registro. solo debes concatenar.



saludos.