Comunidad de diseño web y desarrollo en internet online

como colocar mas de un campo examinar para subir archivos

Citar            
MensajeEscrito el 17 Mar 2009 06:48 pm
tengo un formulario en php para subir imagenes y archivos coloque un campo de archivo extra pero a la hora de subirlo me marca como si el campo estuviera vacio como le puedo hacer para que me guarde los dos campos al mismo tiempo
aqui tengo el codigo

Código PHP :

<?php 
$status = "";
if ($_POST["action"] == "upload") {
   // obtenemos los datos del archivo 
   $tamano = $_FILES["archivo"]['size'];
   $tipo = $_FILES["archivo"]['type'];
   $archivo = $_FILES["archivo"]['name'];
   $prefijo = substr(md5(uniqid(rand())),0,6);
   
   if ($archivo != "") {
      // guardamos el archivo a la carpeta files
      $destino =  "files/".$prefijo."_".$archivo;
      if (copy($_FILES['archivo']['tmp_name'],$destino)) {
         $status = "Archivo subido: <b>".$archivo."</b>";
      } else {
         $status = "Error al subir el archivo";
      }
   } else {
      $status = "Error al subir archivo";
   }
}
?>


y aqui el formulario

Código HTML :

<body>
<table width="413" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="413" height="40" class="titulo">Subir archivos </td>
  </tr>
  <tr>
    <td class="text">Por favor selecciona el archivo a subir:</td>
  </tr>
  <tr>
  <form action="upload.php" method="post" enctype="multipart/form-data">
    <td class="text">
      <input name="archivo" type="file" class="casilla" id="archivo" size="35" />
      <input name="enviar" type="submit" class="boton" id="enviar" value="subir" />
     <input name="action" type="hidden" value="upload" />
     <input name="archivo2" type="file" class="casilla" id="archivo2" size="35" /></td>
   </form>
  </tr>
  <tr>
    <td class="text" style="color:#990000"><?php echo $status; ?></td>
  </tr>
  <tr>
    <td height="30" class="subtitulo">Listado de Archivos y Fotos Subidos </td>
  </tr>
  <tr>
    <td class="infsub">
   <?php 
   if ($gestor = opendir('files')) {
      echo "<ul>";
       while (false !== ($arch = readdir($gestor))) {
         if ($arch != "." && $arch != "..") {
            echo "<li><a href=\"files/".$arch."\" class=\"linkli\">".$arch."</a></li>\n";
         }
       }
       closedir($gestor);
      echo "</ul>";
   }
   ?>   </td>
  </tr>
</table>
</body>

Por cher1_7

55 de clabLevel



 

msie7
Citar            
MensajeEscrito el 18 Mar 2009 12:09 am
En el HTML, ademas de que no debes maquetar usando tablas, colocas una etiqueta td dentro del form y eso no deberia ser.

Código HTML :

<form action="upload.php" method="post" enctype="multipart/form-data"> 
   <input name="action" type="hidden" value="upload" />     
   <input name="archivo[]" type="file" class="casilla" id="archivo[]" size="35" /> 
   <input name="archivo[]" type="file" class="casilla" id="archivo[]" size="35" />
   <input name="enviar" type="submit" class="boton" id="enviar" value="subir" /> 
</form>


y en php accedes asi:

Código PHP :

$tamano1 = $_FILES["archivo"]['size'][0]; 
$tipo1 = $_FILES["archivo"]['type'][0]; 
$archivo1 = $_FILES["archivo"]['name'][0];

$tamano2 = $_FILES["archivo"]['size'][1]; 
$tipo2 = $_FILES["archivo"]['type'][1]; 
$archivo2 = $_FILES["archivo"]['name'][1];


Suerte.

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 18 Mar 2009 04:06 am
si le das click al submit es mas que ovbio que vas hacer el upload, ademas no es buena practica usar hidden!! asi que quita eso....

luego si estas creando dos input tipo file, a cada uno lo debes llamar y cargar por aparte

Código PHP :

   $tamano = $_FILES["archivo"]['size']; 
   $tipo = $_FILES["archivo"]['type']; 
   $archivo = $_FILES["archivo"]['name']; 

// y para el file 2

   $tamano = $_FILES["archivo2"]['size']; 
   $tipo = $_FILES["archivo2"]['type']; 
   $archivo = $_FILES["archivo2"]['name']; 


ahora bien no olvides validar el tipo de extencion del archivo, para que no te vayan a subir un .htaccess y te jodan el server U_U

Por jpcw

Claber

1715 de clabLevel

1 tutorial

Genero:Masculino  

AlgoritmicBrainDesigner

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.