Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/07/2011, 23:42
Avatar de Rankxerox1984
Rankxerox1984
 
Fecha de Ingreso: septiembre-2010
Mensajes: 253
Antigüedad: 13 años, 7 meses
Puntos: 4
Problema con formatos MIME (...o similar)

Hola a todos/as de nuevo:

Hacia dias que no ponía ningún problema. Estoy adaptando un código de un proyecto (mi primer proyecto) para que la recogida de una imagen sirva para documentos tipo doc, xls, pdf, etc.
Según he consultado por la web el tema es muy sencillo solo hay que indicar el tipo de documento et Voilá!, pero como era de esperar me han sugido dos problemas, uno con el formato admitido que me devuelve el siguiente error:

Cita:
"El archivo no está en el formato adecuado solo se admite DOC, XLS, PPT, PDF, ZIP y RAR"
que circunstancialmente coincide con la primera restricción que tengo en el código, que es este:

Código PHP:
//Compruebo el tipo de fichero del Documento
    
    
$mime_archivo=($_FILES['file']['type']);  
    
$mimes_aceptados=array('file/pdf','file/doc','file/rar','file/xls','file/zip','file/ppt');  
            if (!
in_array($mime_archivo,$mimes_aceptados)) 
            {echo 
"<script type=\"text/javascript\">alert(\"El archivo no está en el formato adecuado solo se admite DOC, XLS, PPT, PDF, ZIP y RAR\");   
            window.history.back();  
            </script>"
;  
            exit;}  

//Compruebo el tamaño del fichero  

            
if($_FILES['file']['size']>5000000
            {echo 
"<script type=\"text/javascript\">alert(\"El tamaño no es correcto deber ser inferior a 1MB\");  
            window.history.back();  
            </script>"
;  
            exit;}  

//Compruebo que no se produzcan errores  

            
if($_FILES['file']['error']!=0
            {echo 
"<script type=\"text/javascript\">alert(\"Error al copiar el archivo\");  
            window.history.back();  
            </script>"
;  
            exit; }  

//defino donde guardo las imagenes  

    
$RutaDoc "../img/ImgNews/{$_FILES['file'][name]}";  

            if(!
copy($_FILES['file']['tmp_name'], $rutaDoc)) 
            {echo 
"<script type=\"text/javascript\">alert(\"Error al copiar el archivo\");  
            window.history.back();  
            </script>"
;   
            exit;} 
El otro problema es que no sé como permitir en el proceso del formulario que el campo esté vacio.

¿Alguien sabe como resolver estos inconvenientes? de los dos el más gordo para mi es el tema del formato de archivo.

Agradeciendo de antemano la ayuda, un cordial saludo a todos/as
__________________
J.
¿Dónde está la tecla ‘ANY’?
(H. Simpson)