Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Insertar en bd a traves de foreach

Estas en el tema de Insertar en bd a traves de foreach en el foro de PHP en Foros del Web. Hola..tengo el siguiente inconveniente con un foreach y es el siguiente tengo un formulario donde los usuarios deben escoger unos pasatiempos, por cada pasa tiempo ...
  #1 (permalink)  
Antiguo 28/04/2015, 11:35
 
Fecha de Ingreso: marzo-2004
Mensajes: 199
Antigüedad: 20 años, 8 meses
Puntos: 1
Insertar en bd a traves de foreach

Hola..tengo el siguiente inconveniente con un foreach y es el siguiente

tengo un formulario donde los usuarios deben escoger unos pasatiempos, por cada pasa tiempo escogido se debe generar un registro con el id del usuario..asi

Código HTML:
<form method="POST" action="registrar.php">

<input name="Id_pasa" type="checkbox" id="Id_pasa" value="1" > Cantar
<input name="Id_pasa" type="checkbox" id="Id_pasa" value="2" > Bailar
<input name="Id_pasa" type="checkbox" id="Id_pasa" value="3" > Jugar
<input name="Id_pasa" type="checkbox" id="Id_pasa" value="4" > Beber
<input name="Id_usuario" type="hidden" id="Id_usuario" value="45">
</form> 
Lo que el debe hacer es que cada opcion se marque debe registrar en una tabla de mysql, por ejemplo, el usuario marca la opcion cantar y jugar me debe registrar asi:

Id Usuario | Id_pasa
45 | 1
45 | 3

se que a través de un foreach funciona pero no lo he logrado, pues no me registra nada..
el código lo tengo asi:

Código PHP:
$idusuario=$_POST['Id_usuario'];
foreach (
$_POST['Id_pasa'] as $clave)
    {
    
mysql_query("insert into solicitudes (Id_usuario,Id_pasa)values('$idusuario','$clave')",$conn) or die ("Error :".mysql_error());

No se que error tenga o como se pueda hacer?


Gracias por su ayuda
  #2 (permalink)  
Antiguo 28/04/2015, 11:51
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 8 meses
Puntos: 2534
Respuesta: Insertar en bd a traves de foreach

Para que los datos se agrupen debes usar la notación de array, lo cual no haces.

Código HTML:
Ver original
  1. <!-- MAL -->
  2. <input name="Id_pasa">
  3.  
  4. <!-- BIEN -->
  5. <input name="Id_pasa[]">

Así entonces $_POST['Id_pasa'] será un array, antes no.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 28/04/2015, 11:55
 
Fecha de Ingreso: marzo-2004
Mensajes: 199
Antigüedad: 20 años, 8 meses
Puntos: 1
Respuesta: Insertar en bd a traves de foreach

Excelente, muchas gracias

Etiquetas: bd, foreach, formulario, mysql, registro, tabla, traves, usuarios
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 08:05.