Ver Mensaje Individual
  #4 (permalink)  
Antiguo 04/04/2017, 07:56
Avatar de aviweb2015
aviweb2015
 
Fecha de Ingreso: abril-2016
Ubicación: venezuela
Mensajes: 215
Antigüedad: 8 años
Puntos: 1
Respuesta: insertar multiples imagenes un un mismo input PDO

ya lo pude solucionar anexo código

Código PHP:
Ver original
  1. <!-- proceso para registrar-->
  2. <?php
  3. error_reporting( ~E_NOTICE ); // avoid notice
  4. include '../conexion/conexion.php';
  5. if (isset($_POST['guardar'])) {
  6.     $fk_categorias = $_POST['fk_categorias'];
  7.     $precio        = $_POST['precio'];
  8.     $descripcion   = $_POST['descripcion'];
  9.     $detalles      = $_POST['detalles'];
  10.    
  11.  
  12.  
  13.     if (empty($fk_categorias)) {
  14.         $errMSG = "Por favor ingrese la categoria.";
  15.     } else if (empty($precio)) {
  16.         $errMSG = "Por favor ingrese el precio.";
  17.     } else if (empty($descripcion)) {
  18.         $errMSG = "Por favor ingrese la descripcion del articulo.";
  19.     } else if (empty($detalles)) {
  20.         $errMSG = "Por favor ingrese algun detalle para el articulo.";
  21.     }
  22.     if (empty($errMSG)) {
  23.         $imagen_bd = array();
  24.         foreach ($_FILES['imagen']['tmp_name'] as $key => $tmp_name) {
  25.             if ( ! empty($errMSG)) {
  26.                 //echo $errMSG;
  27.                 header("refresh:5;registrar_multiple.php");
  28.                 break;
  29.             }
  30.             $imgFile          = $key . $_FILES['imagen']['name'][$key];
  31.             $tmp_dir          = $_FILES['imagen']['tmp_name'][$key];
  32.             $imgSize          = $_FILES['imagen']['size'][$key];
  33.             $upload_dir       = '../galerias/'; // upload directory
  34.             $imgExt           = strtolower(pathinfo($imgFile, PATHINFO_EXTENSION)); // get image extension
  35.             //validar la extension de la imagen
  36.             $valid_extensions = array(
  37.                 'jpeg',
  38.                 'jpg',
  39.                 'png',
  40.                 'gif'
  41.             ); // valid extensions
  42.             // rename uploading image
  43.             $imagen           = rand(1000, 1000000) . "." . $imgExt;
  44.             $imagen_bd[]      = $imagen;
  45.             // allow valid image file formats
  46.             if (in_array($imgExt, $valid_extensions)) {
  47.                 // Check file size '5MB'
  48.                 if ($imgSize < 10000000) {
  49.                     move_uploaded_file($tmp_dir, $upload_dir . $imagen);
  50.                 } else {
  51.                     $errMSG = "¡ Ups Aviso: Lo siento, su archivo es demasiado grande !";
  52.                     header("refresh:5;registrar_multiple.php");
  53.                 }
  54.             } else {
  55.                 $errMSG = "¡ Ups Aviso: Lo sentimos, sólo se permiten archivos JPG, JPEG, PNG y GIF !";
  56.                 header("refresh:5;registrar_multiple.php");
  57.             }
  58.         }
  59.         // si no hay errores continuo...
  60.         $sql = $DB_con->prepare("INSERT INTO detalles_categorias (fk_categorias, precio, descripcion, detalles) VALUES (:fk_categorias, :precio, :descripcion ,:detalles)");
  61.         $sql->bindParam(':fk_categorias', $fk_categorias);
  62.         $sql->bindParam(':precio', $precio);
  63.         $sql->bindParam(':descripcion', $descripcion);
  64.         $sql->bindParam(':detalles', $detalles);
  65.         $sql->execute();
  66.         $last_id = $DB_con->lastInsertId();
  67.         foreach ($imagen_bd as $img) {
  68.             $sql2    = $DB_con->prepare("INSERT INTO detalles_img (id, imagen) VALUES (:id, :imagen)");
  69.             $sql2->bindParam(':id', $last_id);
  70.             $sql2->bindParam(':imagen', $img);
  71.             if ($sql2->execute()) {
  72.                 $successMSG = "¡ Bien Hecho: Registro Insertado Correctamente !";
  73.                 header("refresh:5;registrar_multiple.php");
  74.             } else {
  75.                 $errMSG = "¡ Ups Aviso: Hubo un error al insertar el registro !";
  76.                 header("refresh:5;registrar_multiple.php");
  77.             }
  78.         }
  79.     } else {
  80.         //echo $errMSG;
  81.         //header("refresh:5;registrar_multiple.php");
  82.     }
  83. }
  84. ?>
  85. <!-- fin proceso para registrar-->
__________________
yoclens avilan