Foros del Web » Programando para Internet » PHP »

Multiple upload y mas..

Estas en el tema de Multiple upload y mas.. en el foro de PHP en Foros del Web. Hola foro, como estan? Les consulto lo siguiente: Quiero que un visitante pueda subir 6 imágenes por medio de 6 <input type="file" />, que las ...
  #1 (permalink)  
Antiguo 17/01/2011, 08:15
 
Fecha de Ingreso: noviembre-2009
Mensajes: 381
Antigüedad: 15 años
Puntos: 6
Multiple upload y mas..

Hola foro, como estan? Les consulto lo siguiente:

Quiero que un visitante pueda subir 6 imágenes por medio de 6 <input type="file" />, que las imágenes se guarden en una carpeta en el servidor y además que el nombre de las imágenes se almacenen en la Base de Datos.

Seria posible? Busqué cosas pero lo que hay no logro adaptarlo a esto.

Muchas gracias!
Gustavo.
  #2 (permalink)  
Antiguo 17/01/2011, 08:20
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 5 meses
Puntos: 1517
Respuesta: Multiple upload y mas..

Si es posible, en el mismo manual de PHP hay un ejemplo de como manejar multiples uploads http://www.php.net/manual/es/functio...oaded-file.php
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 17/01/2011, 08:34
 
Fecha de Ingreso: abril-2010
Ubicación: Colombia
Mensajes: 229
Antigüedad: 14 años, 7 meses
Puntos: 2
Respuesta: Multiple upload y mas..

Bueno primera crea una pagina con el formulario para subir las imagenes:

Código HTML:
Ver original
  1. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  2. <title>Documento sin t&iacute;tulo</title>
  3. <style type="text/css">
  4. <!--
  5. #apDiv1 {
  6.     position:absolute;
  7.     width:353px;
  8.     height:115px;
  9.     z-index:1;
  10.     left: 272px;
  11.     top: 28px;
  12. }
  13. -->
  14. </head>
  15.  
  16. <div id="apDiv1">
  17.   <form name="form1" method="post" action="res_archivo.php" enctype="multipart/form-data">
  18.   <table width="100%" border="0">
  19.     <tr>
  20.       <td width="4%">&nbsp;</td>
  21.       <td width="21%"><strong>Imagen1:</strong></td>
  22.       <td width="75%"><input type="file" name="archivo1" id="archivo1"></td>
  23.     </tr>
  24.     <tr>
  25.       <td>&nbsp;</td>
  26.       <td><strong>Imagen2:</strong></td>
  27.       <td><input type="file" name="archivo2" id="archivo2"></td>
  28.     </tr>
  29.     <tr>
  30.       <td>&nbsp;</td>
  31.       <td><strong>Imagen3:</strong></td>
  32.       <td><input type="file" name="archivo3" id="archivo3"></td>
  33.     </tr>
  34.     <tr>
  35.       <td>&nbsp;</td>
  36.       <td><strong>Imagen4:</strong></td>
  37.       <td><input type="file" name="archivo4" id="archivo4"></td>
  38.     </tr>
  39.     <tr>
  40.       <td>&nbsp;</td>
  41.       <td><strong>Imagen5:</strong></td>
  42.       <td><input type="file" name="archivo5" id="archivo5"></td>
  43.     </tr>
  44.     <tr>
  45.       <td>&nbsp;</td>
  46.       <td><strong>Imagen6:</strong></td>
  47.       <td><input type="file" name="archivo6" id="archivo6"></td>
  48.     </tr>
  49.     <tr>
  50.       <td>&nbsp;</td>
  51.       <td>&nbsp;</td>
  52.       <td><input type="submit" name="button" id="button" value=":: Aceptar ::"></td>
  53.     </tr>
  54.   </table>
  55.  
  56.   </form>
  57. </div>
  58. </body>
  59. </html>


Luego la pagina de respuestas la cual subira las imagenes a una carpeta llamada archivos.

Código PHP:
Ver original
  1. <?php
  2.  
  3. $archivo1 = "";
  4. if(!empty($_FILES['archivo1'][ 'name' ])){
  5. $archivo1=$_FILES['archivo1'][ 'name' ];
  6. }
  7.  
  8. if ($archivo1 != ""){
  9. move_uploaded_file ( $_FILES [ 'archivo1' ][ 'tmp_name' ], "archivos/".$archivo1);
  10. }
  11.  
  12.  
  13. $archivo2 = "";
  14. if(!empty($_FILES['archivo2'][ 'name' ])){
  15. $archivo2=$_FILES['archivo2'][ 'name' ];
  16. }
  17.  
  18. if ($archivo2 != ""){
  19. move_uploaded_file ( $_FILES [ 'archivo2' ][ 'tmp_name' ], "archivos/".$archivo2);
  20. }
  21.  
  22. $archivo3 = "";
  23. if(!empty($_FILES['archivo3'][ 'name' ])){
  24. $archivo3=$_FILES['archivo3'][ 'name' ];
  25. }
  26.  
  27. if ($archivo3 != ""){
  28. move_uploaded_file ( $_FILES [ 'archivo3' ][ 'tmp_name' ], "archivos/".$archivo3);
  29. }
  30.  
  31.  
  32. $archivo4 = "";
  33. if(!empty($_FILES['archivo4'][ 'name' ])){
  34. $archivo4 =$_FILES['archivo4'][ 'name' ];
  35. }
  36.  
  37. if ($archivo4 != ""){
  38. move_uploaded_file ( $_FILES [ 'archivo4' ][ 'tmp_name' ], "archivos/".$archivo4);
  39. }
  40.  
  41. $archivo5 = "";
  42. if(!empty($_FILES['archivo5'][ 'name' ])){
  43. $archivo5 =$_FILES['archivo5'][ 'name' ];
  44. }
  45.  
  46. if ($archivo5 != ""){
  47. move_uploaded_file ( $_FILES [ 'archivo5' ][ 'tmp_name' ], "archivos/".$archivo5);
  48. }
  49.  
  50. echo "Los archivos han sido subidos con exito<br>";
  51. echo "archivo1 = ".$archivo1."<br>";
  52. echo "archivo2 = ".$archivo2."<br>";
  53. echo "archivo3 = ".$archivo3."<br>";
  54. echo "archivo4 = ".$archivo4."<br>";
  55. echo "archivo5 = ".$archivo5."<br>";
  56.  
  57. ?>

Por ultimo ya tienes las variables pues las guardas en tu base de datos....

Espero que te sirva.
  #4 (permalink)  
Antiguo 17/01/2011, 08:38
 
Fecha de Ingreso: noviembre-2009
Mensajes: 381
Antigüedad: 15 años
Puntos: 6
Respuesta: Multiple upload y mas..

Hola! Muchisimas gracias primero por responder en ambos casos.

A simple lectura el código se lo ve muy bien, ya mismo lo pondré en marcha y les comento como me fué.

Muy agradecido, saludos!
Gustavo.
  #5 (permalink)  
Antiguo 18/01/2011, 07:25
 
Fecha de Ingreso: noviembre-2009
Mensajes: 381
Antigüedad: 15 años
Puntos: 6
Respuesta: Multiple upload y mas..

Hola!

Muy buen script... funciona re bien, ahora voy por mas y voy a limitar a que solo suban .jpg y .gif y limitar el upload a no mas de 500kb.

Muchisimas gracias!
Gustavo.

Etiquetas: mas, upload
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:50.