Foros del Web » Programando para Internet » PHP »

subir mas de una imagen

Estas en el tema de subir mas de una imagen en el foro de PHP en Foros del Web. como puedo subir la url de mas de una foto a la base de datos subir.php @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original <?php   require ...
  #1 (permalink)  
Antiguo 12/06/2018, 16:01
 
Fecha de Ingreso: abril-2016
Mensajes: 29
Antigüedad: 2 años, 6 meses
Puntos: 0
subir mas de una imagen

como puedo subir la url de mas de una foto a la base de datos

subir.php
Código PHP:
Ver original
  1. <?php
  2.  
  3. require 'funciones.php';
  4.  
  5. if ($_SERVER['REQUEST_METHOD'] == 'POST' && !empty($_FILES)) {
  6.     $check = @getimagesize($_FILES['image']['tmp_name']);
  7.     if ($check !== false) {
  8.         $carpeta_destino = 'fotos/';
  9.         $archivo_subido = $carpeta_destino . $_FILES['image']['name'];
  10.         move_uploaded_file($_FILES['image']['tmp_name'], $archivo_subido);
  11.  
  12.         $statement = $conexion->prepare('
  13.             INSERT INTO productos (titulo, imagen, descripcion)
  14.             VALUES (:title, :image, :description)
  15.         ');
  16.  
  17.         $statement->execute(array(
  18.             ':title' => $_POST['title'],
  19.             ':image' => $_FILES['image']['name'],
  20.             ':description' => $_POST['description']
  21.         ));
  22.  
  23.         header('Location: index.php');
  24.     } else {
  25.         $error = "El archivo no es una imagen o el archivo es muy pesado";
  26.     }
  27. }
  28.  
  29. require 'views/subir.view.php';
  30.  
  31. ?>


subir.view.php
  #2 (permalink)  
Antiguo 12/06/2018, 16:33
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 10 años, 5 meses
Puntos: 528
Respuesta: subir mas de una imagen

Depende de tu formulario.

Si el campo para subir el archivo de imagen es de tipo múltiple, deberás usar un ciclo para recorrer el arreglo que recibirás e ir insertando en la base de datos.

Si tienes varios campos de tipo archivo "simple", ejecutar el código que ya tienes para cada campo.
  #3 (permalink)  
Antiguo 12/06/2018, 16:37
 
Fecha de Ingreso: abril-2016
Mensajes: 29
Antigüedad: 2 años, 6 meses
Puntos: 0
Respuesta: subir mas de una imagen

no se subio el codigo del otro archivo
el codigo que tengo en el formulario es
Código HTML:
Ver original
  1.     <meta charset="UTF-8">
  2.     <meta name="viewport" content="width=device-width, user-scalable=no,
  3.     initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
  4. <link href="https://fonts.googleapis.com/css?family=Slabo+27px" rel="stylesheet">
  5. <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.0.13/css/all.css" integrity="sha384-DNOHZ68U8hZfKXOrtjWvjxusGo9WQnrNx2sqG0tfsghAvtVlRW3tvkXWZh58N9jp" crossorigin="anonymous">
  6. <link rel="stylesheet" href="css/estilos.css">
  7. </head>
  8.     <header>
  9.     <div class="contenedor">
  10.         <h1 class="titulo">Subir Foto</h1>
  11.     </div>
  12.     </header>
  13.  
  14.     <div class="contenedor">
  15.         <form class="formulario" method="POST" enctype="multipart/form-data" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>">
  16.             <label for="foto">Selecciona tu foto</label>
  17.             <input type="file" id="foto" name="image">
  18.  
  19.             <label for="titulo">Titulo de la foto</label>
  20.             <input type="text" id="titulo" name="title">
  21.  
  22.             <label for="texto">Descripción:</label>
  23.             <textarea name="description" id="texto" placeholder="Ingresa una descripción"></textarea>
  24.  
  25.             <?php if (isset($error)): ?>
  26.                 <p class="error"><?php echo $error; ?></p>
  27.             <?php endif ?>
  28.  
  29.             <input type="submit" class="submit" value="Guardar">
  30.  
  31.         </form>
  32.     </div>
  33. </body>
  34. </html>
  #4 (permalink)  
Antiguo 12/06/2018, 17:20
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 10 años, 5 meses
Puntos: 528
Respuesta: subir mas de una imagen

Ese formulario está hecho para una sola imagen, pero dado que a la imagen le estás asociando otros datos como título y descripción, no creo que sea buena idea usar un campo de archivo múltiple, por lo que te sugiero replicar estos datos por la cantidad de imágenes que quieres que se pueda cargar por artículo.

En este caso, sería como en mi segunda sugerencia, el código que recibe los datos deberá repetirse para cada imagen que se pueda cargar al sistema.
  #5 (permalink)  
Antiguo 12/06/2018, 17:56
 
Fecha de Ingreso: abril-2016
Mensajes: 29
Antigüedad: 2 años, 6 meses
Puntos: 0
Respuesta: subir mas de una imagen

se puede agregar la opcion de subir mas imagenes en otro formulario, por ejemplo al editar el producto?
  #6 (permalink)  
Antiguo 13/06/2018, 08:57
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 10 años, 5 meses
Puntos: 528
Respuesta: subir mas de una imagen

Supongo que una opción que sólo pueda subir una imagenn a la vez, cuando guardas el producto y después cada vez que lo editas, hasta cierto límite, pero necesitarás almo más complejo si vas a permitir que la imagen sea cambiada o eliminada, así que si tu nivel de programación no es muy alto, te recomiendo mejor tener un formulario fijo con la cantidad predeterminada de imágenes que vas a soportar.

Si te preocupa el tamaño del formulario de captura, podrías tener las imágenes y sus datos asociados en acordeones para que el usuario despliegue sólo los que quiera usar.



La zona horaria es GMT -6. Ahora son las 17:34.