[Php-avanzado] Bajar archivos

Mario Gomez Cassou collectgc en gmail.com
Jue Nov 22 11:27:38 ART 2012


Hola gente:
en un script para bajar archivos (abajo copio el código) tengo dos
problemas:

1) para detectar el tipo de archivo usaba la función mime_content_type()
que ahora resulta obsoleta. Modifiqué el código para utilizar lo
recomendado y cuando quiero utilizarlo en mi servicio de hosting obtengo
"*Fatal error*: Call to undefined function finfo_open()":
es porque estas cosas funcionan con PHP 5.3+ y en el mi hosting hay 5.2...
Esto es mas que nada un comentario. Paso a la consulta

2) si un archivo se llama "gato y perro.pdf" el script me lo baja como
"gato.pdf"; como se manejan los nombres con espacios?

Todo esto está en www.gomezcassou.com.ar/archivos
Saludos
Mario

// "$arch" es el archivo a bajar

        /* esto requiere PHP 5.3+
        $finfo = finfo_open(FILEINFO_MIME_TYPE);
        $tipo  = finfo_file($finfo,$arch);
        finfo_close($finfo);
        */

        // mime_content_type es obsoleto pero mientras tanto...
        $tipo  = mime_content_type($arch);
        //die("<br>- $arch - $tipo");

        @header("Cache-Control: ");// leave blank to avoid IE errors
        @header("Pragma: ");// leave blank to avoid IE errors
        @header("Content-type: $tipo");
        @header("Content-Disposition: attachment; filename=$arch");
        readfile("$arch");
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://www3.fi.mdp.edu.ar/pipermail/php-avanzado/attachments/20121122/dc3a87fd/attachment.html>


Más información sobre la lista de distribución Php-avanzado