Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/10/2017, 04:48
Avatar de angel_dope
angel_dope
 
Fecha de Ingreso: noviembre-2002
Ubicación: Valencia
Mensajes: 737
Antigüedad: 21 años, 5 meses
Puntos: 8
Fallo al subir archivos

Hola, estoy intentando subir dos archivos desde un formulario web usando el mismo código que he usado en otras ocasiones, pero por alguna razón no funciona, os pongo el código que estoy usando.

Este es el formulario desde el que se mandan los dos archivos:

Código HTML:
Ver original
  1. <form action="subir.php" method="post" enctype="multipart/form-data" name="frm" id="frm" onSubmit="return validar(this)">
  2.     <input name="foto" type="file" id="campos-solicitud2" maxlength="150" placeholder="Foto producto *">
  3.     <br>
  4.     <input name="ruta" type="hidden" id="ruta" value="./Adjuntos_Congreso/">
  5.     <input name="cif" type="hidden" id="cif" value="<%=request.form("cif")%>">
  6.     <br>
  7.     <input name="foto_contacto" type="file" id="campos-solicitud" maxlength="25" placeholder="Foto contacto *">
  8.     <br><br>
  9.     <input name="enviar" type="submit" id="enviar" title="enviar" value="Siguiente">
  10.   </form>

Y este es el código que en teoría debería guardar los archivos donde toca.

Código PHP:
Ver original
  1. <?php
  2. $ruta = $_POST['ruta'] ;
  3. $nombre=$_POST['cif'] ;
  4.  
  5. $N = 2; //Número de archivos a Subir
  6.  
  7. for($i=0; $i<$N; $i++) {
  8.     if (is_uploaded_file($_FILES['userfile']['tmp_name'][$i])) {
  9.         echo "Entro1<br>";
  10.         $split_path = explode("/", $_FILES['userfile']['name'][$i]);
  11.         $split_path = end($split_path);
  12.         $extension = explode(".", $split_path);
  13.         if (end($extension) == "php" || end($extension) == "php3") {
  14.             echo "tipo de archivo invalido";
  15.        
  16.         } else {
  17.             $RUTA_UPLOADED = $ruta;    
  18.             $NOMBRE_FILE = $split_path;
  19.            
  20.             if ($i==0) {
  21.                 if (end($extension) == "jpg" || end($extension) == "JPG" ) {
  22.                     $NOMBRE_FILE = "CH_Foto_" . $nombre . end($extension);
  23.                 } else {
  24.                     //header("Location: default.asp?tablon=1&error=2");
  25.                     //die("");
  26.                     echo "Error1";
  27.                 }
  28.             }
  29.             if ($i==1) {
  30.                 if (end($extension) == "jpg" || end($extension) == "JPG" ) {
  31.                     $NOMBRE_FILE = "CH_FotoContacto_" . $nombre . end($extension);
  32.                 } else {
  33.                     //header("Location: default.asp?tablon=1&error=2");
  34.                     //die("");
  35.                     echo "Error2";
  36.                 }
  37.             }
  38.         move_uploaded_file($_FILES['userfile']['tmp_name'][$i], $RUTA_UPLOADED . $NOMBRE_FILE . "." . end($extension));
  39.        
  40.         }
  41.     }
  42.     else{
  43.         echo "Error1b";
  44.    
  45.     }
  46. }
  47. //echo "subido";
  48. //header("Location: subido.php");
  49.  
  50. ?>

El problema está en que ni siquiera se mete en el primer IF (if (is_uploaded_file($_FILES['userfile']['tmp_name'][$i])) { ) sino que que pasa directamente al else, con lo que me muestra ERROR1B por pantalla (es lo que he puesto para comprobar que era eso lo que hacía)

¿Alguna idea de por qué me está haciendo esto? Salu2 y gracias
__________________
Vayamos por Partes :: Jack el Destripador