Al hacer una transacción tengo que insertar varios datos, tabla principal, despues otra taba que van varios registros para cierta id de la tabla principal, eso lo hago asi, con foreach:
Código PHP:
$idiomas = $_POST['recibeidioma'];
foreach ($idiomas as $x){
$sqlidioma=("INSERT INTO sesiones_ints_has_idiomas (
sesiones_ints_id_sesion_int,
idiomas_id_idioma
) VALUES (
'$idactividad', '$x')");
// exit ("<h2>$sqlidioma</h2>");
mysql_query($sqlidioma) or exit(mysql_error());
}
Pero luego debo hacer un insert en otra tabla con FK, la que debo pasar los siguientes valores
IDORDEN | IDPRODUCTO | CANTIDAD
el array sería
[chkSeleccionar] => Array ( [0] => 4 [1] => 6 ) // este es id del producto
[cantServicio] => Array ( [0] => 1 [1] => 10) // estas son las cantidades
Donde el producto #4 tiene 1 en cantidad y el producto #6 tiene 10 en cantidad
Estos los paso a través de método $_POST y el id lo rescato con un SELECT LAST_INSERT_ID().
La duda es cómo manejo los arreglos de forma paralela, para que queden de forma correcta, es decir un "producto" tiene una "cantidad", hasta donde yo se no se pueden hacer foreach anidados, al menos no he leido lo contrario.
¿Alguien sabe como se podrá hacer?
Saludos y gracias de antemano
Solucionado con un for
Código PHP:
Ver original
$servelej=$_POST['chkSeleccionar']; $cant=$_POST['cantServicio']; $sqlserv=("INSERT INTO sesiones_ints_has_servicios ( id_sesion_int, id_servs_provs, cant ) VALUES ( '$idactividad', '$servelej[$i]', '$cant[$i]')"); // exit ("<h2>$sqlserv</h2>"); }