PHP - insertar varias filas a la vez

   
Vista:

insertar varias filas a la vez

Publicado por Daniel (35 intervenciones) el 08/05/2016 14:17:53
Buenas de nuevo,

pues ahora tengo un problema al ejecutar el INSERT en mi base de datos...

A ver, estoy creando un sistema de envío de mensajes personales. El usuario elige a quien quiere enviar el mensaje seleccionando uno o varios checkbox

1
2
3
4
<input name= "checkprof[]" value="Julia Perez" id="prof01" type="checkbox" /> Perez, Julia
<input name= "checkprof[]" value="Marta Garcia" id="prof01" type="checkbox" /> Garcia, Marta
<input name= "checkprof[]" value="Raul Perez" id="prof01" type="checkbox" /> Perez, Raul
<input name= "checkprof[]" value="Cristina Bueno" id="prof01" type="checkbox" /> Bueno, Cristina

Bien, mi código para hacer el INSERT es este:

1
2
3
4
5
foreach($_POST['checkprof'] as $v){
           $v  ;
        }
        $prof_seleccionados = implode(",", $_POST['checkprof']);
        $insertar=mysql_query("INSERT INTO mp(id,emisor,receptor,title,message,leido,fecha,ip) VALUES ('', '".$row_usuarios['usuario']."', '".$prof_seleccionados."', '".mysqli_real_escape_string($connection, $_POST['title'])."', '".mysqli_real_escape_string($connection, $_POST['message'])."', 'no', '".date("Y-m-d")."', '".$_SERVER['SERVER_ADDR']."')");

El problema es que inserta una única fila, y en la columna receptor, los nombres seguidos de los value que seleccioné en los checkbox

Quiero que me haga una fila por cada checkbox que haya seleccionado.

He probado ya muchísimas opciones y esta es la que mas se acerca... a ver si me dais la clave porfa
saludos a todos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

insertar varias filas a la vez

Publicado por xve (5518 intervenciones) el 08/05/2016 18:11:22
Hola Daniel, según entiendo, tienes que poner el la consulta SQL dentro del bucle, no?
algo así:
1
2
3
4
foreach($_POST['checkprof'] as $v){
        $prof_seleccionados = $v;
        $insertar=mysql_query("INSERT INTO mp(id,emisor,receptor,t...
}

coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

insertar varias filas a la vez

Publicado por Daniel (35 intervenciones) el 08/05/2016 18:53:05
Madre mia, ¿como no me he fijado?

Solucionadísimo, voy a meterme debajo de la cama a llorar de lo zote que soy....

Gracias xve, una vez más, ¿que haría yo sin ti? Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar