Foros del Web » Programando para Internet » PHP »

No sube archivos pero no da error

Estas en el tema de No sube archivos pero no da error en el foro de PHP en Foros del Web. Buenas, Debo de tener un error tan tonto que no lo veo, a ver si vosotros me ayudáis... Es una sencilla web con un textarea ...
  #1 (permalink)  
Antiguo 25/07/2013, 09:48
 
Fecha de Ingreso: abril-2012
Ubicación: 41°37′00″N, 00°37′00″E
Mensajes: 462
Antigüedad: 12 años
Puntos: 33
No sube archivos pero no da error

Buenas,

Debo de tener un error tan tonto que no lo veo, a ver si vosotros me ayudáis...

Es una sencilla web con un textarea y un input[file], nada más.

Dejo todo el código php:

Código PHP:
Ver original
  1. raiz/servicios/diseno/updateCSS.php
  2.  
  3. <?php
  4.  
  5. if(isset($_POST['tz']))
  6.     update();
  7. else
  8.     show();
  9.  
  10. function update(){
  11.         for($i=0;$i<count($_FILES['p']['tmp_name']);$i++)
  12.             if(is_uploaded_file($_FILES['p']['tmp_name'][$i]))
  13.             move_uploaded_file($_FILES['p']['tmp_name'][$i], 'raiz/img/css/'.$_FILES['p']['name'][$i]);
  14.  
  15.     file_put_contents("raiz/css/style_new.css", $_POST['tz']);
  16.  
  17.     show();
  18. }
  19.  
  20. function show(){
  21.     echo('
  22. <form name="f" action="updateCSS.php" method="post" enctype="multipart/form-data">
  23.    <textarea name="tz" cols="80" rows="80">
  24.        '.file_get_contents('raiz/css/style_new.css').'
  25.    </textarea>
  26.    <input type="file" name="p" />
  27.    <input type="submit" name="s" value="Actualizar CSS" />
  28. </form>');
  29. }
  30. ?>

Como se ve el sencillo es más simple (como aquel que dice) que un botijo... sin embargo no me sube los ficheros.

He comprobado la ruta (copiar-pegar), he verificado los permisos de usuario (chmod 777 en la carpeta), he hecho copia-pega del "enctype", pero nada...

No me reporta ningún error, pero no me copia los archivos.

¿Alguna idea de qué está pasando?

Gracias
  #2 (permalink)  
Antiguo 25/07/2013, 10:21
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: No sube archivos pero no da error

Aprende a depurar tus errores y tu código, nadie va a adivinar que haces mal si tu no proporcionas nada más inútil que un código.

Agrega esto al inicio de tu script:
Código PHP:
Ver original
  1. ini_set('display_errors', 1);

Ya con eso nos evitas adivinar y te enteras si hay algo mal.

Edito: ahora que veo tu formulario lo estás tratando con tu código como si fuera múltiple pero no lo es, revisa el manual.

http://php.net/manual/en/features.file-upload.php
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 25/07/2013, 10:25
 
Fecha de Ingreso: abril-2012
Ubicación: 41°37′00″N, 00°37′00″E
Mensajes: 462
Antigüedad: 12 años
Puntos: 33
Respuesta: No sube archivos pero no da error

Es que antes lo tenía como multiple, pero al ver que no funcionaba lo he quitado... ahora pruebo lo que me dices a ver...

Edit: no da error
He cambiado a múltiple y he subido 4 archivos. En un print_r($_FILES) me devuelve:

Array ( [p] => Array ( [name] => Puesta de sol.jpg [type] => image/jpeg [tmp_name] => /tmp/phpUr0C8F [error] => 0 [size] => 71189 ) )

Por lo que veo los otros 3 no aparecen...

Edit otra vez: no entra en el if(is_uploadaed_file).

Última edición por DoHITB; 25/07/2013 a las 10:32
  #4 (permalink)  
Antiguo 29/07/2013, 01:22
 
Fecha de Ingreso: abril-2012
Ubicación: 41°37′00″N, 00°37′00″E
Mensajes: 462
Antigüedad: 12 años
Puntos: 33
Respuesta: No sube archivos pero no da error

Cita:
Iniciado por pateketrueke Ver Mensaje
Aprende a depurar tus errores y tu código, nadie va a adivinar que haces mal si tu no proporcionas nada más inútil que un código.

Agrega esto al inicio de tu script:
Código PHP:
Ver original
  1. ini_set('display_errors', 1);

Ya con eso nos evitas adivinar y te enteras si hay algo mal.

Edito: ahora que veo tu formulario lo estás tratando con tu código como si fuera múltiple pero no lo es, revisa el manual.

http://php.net/manual/en/features.file-upload.php
Pues ya está arreglado.

Todo lo que había que adivinar es que faltaba un "[]" en el nombre del input file.

Se depurar mis errores y mi código, solo que si llevo 2 horas mirando el mismo error dejo de verlos. Te recomiendo que no seas tan agresivo en los mensajes; es contraproducente.

Etiquetas: sube
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 03:05.