[Resuelto] problema con foreach en php para hacer insert

Iniciado por tecasoft, 19 Octubre 2015, 17:19 PM

0 Miembros y 1 Visitante están viendo este tema.

tecasoft

buenas tengo una tabla que es clientes tratamiento $pscnt_nombre y $pscnt_apellidos vienen de un array para que sea un bucle de insertar tantos nombre y apellidos que quiera en una tabla apartir de $_POST[] , el problema viene que quiero unir $nombre y $apellidos en una misma query pero no se como hacerlo por foreach para que resulte exitoso, es decir que sea solo un foreach las 2 consultas.

Como lo hariais gente? alguien experto por el foro? o que se le de bien estas cosas? es que me lleva mucho lio y no se como puedo hacerlo todo en una consulta sql solo atraves de foreach?

Código (php) [Seleccionar]

foreach($pscnt_nombre as $nombre){
     
      mysqli_query($conexion,"insert into clientes_tratamiento (nombre,cod_tra) values ('$nombre','$id')");
     }
   
     
foreach($pscnt_apellidos as $apellidos){
      mysqli_query($conexion,"insert into clientes_tratamiento (apellidos,cod_tra) values ('$apellidos','$id')");
     }



Mod: Temas sobre PHP van al subforo de PHP
http://www.tecasoft.com Un ninja del hacking etico, programacion en html5, css3, javascript, jquery, php, python, c/c++, ensamblador, ingenieria reversa,a auditorias de seguridad, pentesting, exploits

0roch1

$pscnt_nombre y $pscnt_apellidos forzosamente tienen que ser dos array diferentes?

Porque con ese código estás haciendo lo siguiente.

Código (sql) [Seleccionar]

+---------+----------+------------+
| cod_tra | nombre   | apellidos  |
+---------+----------+------------+
| C0D1    | nombre 1 | NULL       |
| COD2    | nombre 2 | NULL       |
| COD1    | NULL     | apellido 1 |
| COD2    | NULL     | apellido 2 |
+---------+----------+------------+


Primero insertas los nombres con su respectivo código y después insertas los apellidos. En todo caso deberías hacer un update, pero entiendo que lo que no quieres es hacer dos querys.

Qué tipo de array es $pscnt_nombre y $pscnt_apellidos?, cómo lo construyes?
De dónde sale $id?



MinusFour

Si tiene el mismo indice:

Código (php) [Seleccionar]

foreach($pscnt_nombre as $index => $nombre){
    $apellido = $pscnt_apellidos[$index];
     mysqli_query($conexion,"insert into clientes_tratamiento (nombre, apellido, cod_tra) values ('$nombre','$apellido','$id')");
}

tecasoft

http://www.tecasoft.com Un ninja del hacking etico, programacion en html5, css3, javascript, jquery, php, python, c/c++, ensamblador, ingenieria reversa,a auditorias de seguridad, pentesting, exploits