Hola Repara2, gracias por ayuda.
La parte del código es así
Código PHP:
Ver original<?php
// Funciones de insertar
function inserta_Producto_En_BD($titulo,$descripcion,$precio,$baseDatos){
$query = "INSERT INTO productos (titulo, descripcion,precio)
VALUES (:titulo,:descripcion,:precio)";
$comando = $baseDatos->prepare($query);
$comando->execute(array(':titulo'=>$titulo, ':descripcion'=>$descripcion,
':precio'=>$precio,
));
}
function inserta_Imagenes_En_BD($id_producto,$imagenes,$ruta,$baseDatos){
$query = "INSERT INTO imagenes (id_producto,imagen, ruta)
VALUES (:id_producto,:imagen,:ruta)";
$comando = $baseDatos->prepare($query);
$comando->execute(array(':id_producto'=>$id_producto, ':imagen'=>$imagenes,
':ruta'=>$ruta,
));
}
// Parte donde sé si tiene más de una imagen
if (count($imagenes->imagen) == 1){ // Solo tiene una imagen $imagen = $imagenes->imagen;
}else{ // Contiene varias imagenes
foreach ($imagenes->imagen as $imagen){
}
}
//Llamadas a las funciones de insertar
inserta_Producto_En_BD($titulo,$descripcion,$precio,$baseDatos);
inserta_Imagenes_En_BD($imagenes,$ruta,$baseDatos);
?>
La llamada al SP entiendo que debería ser pasandoles los parametros de ambos inserts.
Código PHP:
Ver original//Llamar al SP
$query = "CALL sp_altaProducto (:titulo,:descripcion,:precio,:imagenes,:ruta)";
$comando = $baseDatos->prepare($query);
$comando->execute(array(':titulo'=>$titulo, ':descripcion'=>$descripcion,
':precio'=>$precio,
':imagenes'=>$imagenes,
':ruta'=>$ruta));
Y la creación de este SP es lo que no acabo de ver como hacer el bucle. Al SP comentas de pasarle el array de imagenes y que él dentro sepa si tiene una o varias imagenes? en lugar de hacerlo fuera del SP, se trata de hacerlo dentro, no?
Pero como calculas dentro del SP si tiene una o más de una imagen?
Muchas gracias de antemano!