Ver Mensaje Individual
  #3 (permalink)  
Antiguo 13/07/2009, 11:45
Avatar de SCY-FOX
SCY-FOX
 
Fecha de Ingreso: septiembre-2007
Ubicación: Chile
Mensajes: 139
Antigüedad: 16 años, 8 meses
Puntos: 5
Respuesta: Class.upload me renombra los archivos excel.

Claro que pueden ver el código, la clase es open source
Link:http://www.verot.net/php_class_upload.htm

La parte que permite mime types es:
Código PHP:
$this->forbidden = array();
        
$this->allowed = array("application/rar",
                               
"application/x-rar-compressed",
                               
"application/arj",
                               
"application/excel",
                               
"application/gnutar",
                               
"application/octet-stream",
                               
"application/pdf",
                               
"application/powerpoint",
                               
"application/postscript",
                               
"application/plain",
                               
"application/rtf",
                               
"application/vocaltec-media-file",
                               
"application/wordperfect",
                               
"application/x-bzip",
                               
"application/x-bzip2",
                               
"application/x-compressed",
                               
"application/x-excel",
                               
"application/x-gzip",
                               
"application/x-latex",
                               
"application/x-midi",
                               
"application/x-msexcel",
                               
"application/x-rtf",
                               
"application/x-sit",
                               
"application/x-stuffit",
                               
"application/x-shockwave-flash",
                               
"application/x-troff-msvideo",
                               
"application/x-zip-compressed",
                               
"application/xml",
                               
"application/zip",
                               
"application/msword",
                               
"application/mspowerpoint",
                               
"application/vnd.ms-excel",
                               
"application/vnd.ms-powerpoint",
                               
"application/vnd.ms-word",
                               
"application/vnd.ms-word.document.macroEnabled.12",
                               
"application/vnd.openxmlformats-officedocument.wordprocessingml.document",
                               
"application/vnd.ms-word.template.macroEnabled.12",
                               
"application/vnd.openxmlformats-officedocument.wordprocessingml.template",
                               
"application/vnd.ms-powerpoint.template.macroEnabled.12",
                               
"application/vnd.openxmlformats-officedocument.presentationml.template",
                               
"application/vnd.ms-powerpoint.addin.macroEnabled.12",
                               
"application/vnd.ms-powerpoint.slideshow.macroEnabled.12",
                               
"application/vnd.openxmlformats-officedocument.presentationml.slideshow",
                               
"application/vnd.ms-powerpoint.presentation.macroEnabled.12",
                               
"application/vnd.openxmlformats-officedocument.presentationml.presentation",
                               
"application/vnd.ms-excel.addin.macroEnabled.12",
                               
"application/vnd.ms-excel.sheet.binary.macroEnabled.12",
                               
"application/vnd.ms-excel.sheet.macroEnabled.12",
                               
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
                               
"application/vnd.ms-excel.template.macroEnabled.12",
                                                             
"application/xls",
                                                             
"application/x-ms-excel",                                                             
                               
"application/vnd.openxmlformats-officedocument.spreadsheetml.template",
                               
"audio/*",
                               
"image/*",
                               
"video/*",
                               
"multipart/x-zip",
                               
"multipart/x-gzip",
                               
"text/richtext",
                               
"text/plain",
                               
"text/xml");

    } 
y donde las valida en:

Código PHP:
// checks file size and mine type
        
if ($this->uploaded) {

            if (
$this->file_src_size $this->file_max_size ) {
                
$this->processed false;
                
$this->error $this->translate('file_too_big');
            } else {
                
$this->log .= '- file size OK<br />';
            }

            
// turn dangerous scripts into text files
            
if ($this->no_script) {
                if (((
substr($this->file_src_mime05) == 'text/' || strpos($this->file_src_mime'javascript') !== false)  && (substr($this->file_src_name, -4) != '.borrar'))
                    || 
preg_match('/\.(php|pl|py|cgi|asp)$/i'$this->file_src_name) || empty($this->file_src_name_ext)) {
                    
$this->file_src_mime 'text/plain';
                    
$this->log .= '- script '  $this->file_src_name ' renamed as ' $this->file_src_name '.borrar!<br />';
                    
$this->file_src_name_ext .= (empty($this->file_src_name_ext) ? 'txt' '.borrar');
                }
            } 
Tonses, toy pegado.

Por ahora le puse que los marcara como .borrar, pero es lejos lo que sería ideal.
Aparte que de seguro me webean por ese "parche"

Cualquier ayudita me sirve

Gracias de antemano.