Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Subir archivos al servidor ¿por qué unos archivos sí y otros no?

Estas en el tema de Subir archivos al servidor ¿por qué unos archivos sí y otros no? en el foro de PHP en Foros del Web. Buenas tardes, he añadido a mi página un formulario para poder subir archivos de consulta que pueden descargar los usuarios. Mi problema está en que ...
  #1 (permalink)  
Antiguo 10/06/2013, 07:29
 
Fecha de Ingreso: abril-2011
Mensajes: 103
Antigüedad: 12 años, 11 meses
Puntos: 3
Subir archivos al servidor ¿por qué unos archivos sí y otros no?

Buenas tardes,

he añadido a mi página un formulario para poder subir archivos de consulta que pueden descargar los usuarios. Mi problema está en que dependiendo qué tipo de archivo me deja o no me deja subirlo al servidor. Por ejemplo sí me deja subir .doc pero no .pdf
He intentado buscar algo por ahí sobre si hay que definir de alguna manera los archivos que permite pero no he encontrado nada

Código:
switch ($accion){
	
	case 'anadirarchivos':
		
$status = "";	    
$nombre_archivo = $HTTP_POST_FILES['userfile']['name'];


        // guardamos el archivo a la carpeta files
        $destino =  "archivos/".$nombre_archivo;
        if (copy($HTTP_POST_FILES['userfile']['tmp_name'],$destino)) {
			 Archivos::AnadirArchivos($nombre_archivo,$nombre_archivo,$_POST['fechainicio']);
            $status = "Archivo subido: <b>".$nombre_archivo."</b>";
        } else {
            $status = "Error al subir el archivo";
        }
    
    echo $status;
			$tpl->set('lista_archivos', Archivos::MostrarArchivos());
	                $tpl->set('accion','anadirarchivos');
			$tpl_cuerpo = 'archivos.tpl.php';
	break;
Muchas gracias!
  #2 (permalink)  
Antiguo 10/06/2013, 09:24
Avatar de jcxnet  
Fecha de Ingreso: octubre-2005
Ubicación: Perú
Mensajes: 784
Antigüedad: 18 años, 5 meses
Puntos: 56
Respuesta: Subir archivos al servidor ¿por qué unos archivos sí y otros no?

has verificado el tamaño de los archivos? revisa la configuración de tu archivo php.ini:
Código:
; Maximum allowed size for uploaded files.
upload_max_filesize = 40M

; Must be greater than or equal to upload_max_filesize
post_max_size = 40M
__________________
►I'm a devil on the run ♂
Jcxnet.com
*Keep It Simple **
  #3 (permalink)  
Antiguo 10/06/2013, 09:40
 
Fecha de Ingreso: abril-2011
Mensajes: 103
Antigüedad: 12 años, 11 meses
Puntos: 3
Respuesta: Subir archivos al servidor ¿por qué unos archivos sí y otros no?

Hola jcxnet,

muchas gracias por contestar. El problema no es el tamaño de los archivos ya que estos son pequeños sino el tipo de archivo: Si subo un doc o un jpg no tengo ningún problema pero cuando subo un pdf me sale el aviso "Error al subir el archivo".

He estado buscando y no encuentro a nadie que haya tenido un problema parecido...

gracias
  #4 (permalink)  
Antiguo 10/06/2013, 09:52
Avatar de jcxnet  
Fecha de Ingreso: octubre-2005
Ubicación: Perú
Mensajes: 784
Antigüedad: 18 años, 5 meses
Puntos: 56
Respuesta: Subir archivos al servidor ¿por qué unos archivos sí y otros no?

OK, lo siguiente es ver si tu servidor tiene algunas restricciones en los tipos de archivo que permite subir, revisa el archivo mime.types (suponiendo que sea Apache) y verifica que el tipo de archivo que necesitas subir está permitido.
__________________
►I'm a devil on the run ♂
Jcxnet.com
*Keep It Simple **
  #5 (permalink)  
Antiguo 10/06/2013, 10:42
 
Fecha de Ingreso: abril-2011
Mensajes: 103
Antigüedad: 12 años, 11 meses
Puntos: 3
Respuesta: Subir archivos al servidor ¿por qué unos archivos sí y otros no?

Entiendo que sí permite archivos pdf ya que tiene la siguientes líneas y no parece que estén comentadas:

Cita:
application/pdf pdf
application/vnd.cups-pdf
application/vnd.sealedmedia.softseal.pdf
Gracias!
  #6 (permalink)  
Antiguo 10/06/2013, 10:47
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 15 años, 11 meses
Puntos: 2534
Respuesta: Subir archivos al servidor ¿por qué unos archivos sí y otros no?

Esa no es la razón, si de verdad buscas entender lo que te sucede consulta el manual.

http://php.net/manual/es/features.file-upload.php

Ahí se explica como se manejan los formularios de upload y posibles errores, debes depurar lo que hace tu código, observar si en lugar de "Error al subir archivo" puedes obtener un mensaje de error menos inútil.

Sobre todo esta parte, que en ningún lugar de tu código compruebas el error real:

http://www.php.net/manual/es/feature...oad.errors.php

Además de que debes usar move_uploaded_file() y no copy(), pues la primer función está diseñada exactamente para esto, y copy() puede acarrear otro tipo de problemas.

En definitiva, no sabes lo que estás haciendo, por favor lee el manual.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 11/06/2013, 03:47
 
Fecha de Ingreso: abril-2011
Mensajes: 103
Antigüedad: 12 años, 11 meses
Puntos: 3
Respuesta: Subir archivos al servidor ¿por qué unos archivos sí y otros no?

Gracias por el link, no conocía $_FILES['userfile']['error'].

En mi caso el problema era que los archivos en pdf que intentaba subir eran demasiado grandes por lo que aumentando el parámetro "MAX_FILE_SIZE" lo solucioné.

Gracias

Etiquetas: formulario, servidor, unos, usuarios
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 09:36.