Hola, he estado intentando bajar un archivo del servidor pero cuando lo bajo obtengo un archivo en blanco. He utilizado el siguiente código:
He usado solo una linea de header
header('Content-Disposition: attachment; filename="../archivos/'.$nombre.'"');
O todo esto:
$nombre_fichero=basename("../archivos/".$nombre);
if (strstr($_SERVER['HTTP_USER_AGENT'], 'compatible; MSIE ') !== false &&
strstr($_SERVER['HTTP_USER_AGENT'], 'Opera') === false) {
// IE doesn't properly download attachments. This should work
// pretty well for IE 5.5 SP 1
header("Content-Disposition: inline; filename=\"$nombre_fichero\"");
header("Content-Type: application/octetstream; name=\"$nombre_fichero\"");
header("Content-length:".(string)(filesize("$fichero")));
} else {
// Use standard headers for Netscape, Opera, etc.
header("Content-Disposition: attachment; filename=\"$nombre_fichero\"");
header("Content-Type: application/octetstream; name=\"$nombre_fichero\"");
header("Content-length: ".(string)(filesize("$fichero")));
}
readfile("$fichero");
O esto:
$arch = "../archivos/".$nombre;
$arch = "orden_d_trabajo.php";
header( "Content-Type: application/octet-stream");
header( "Content-Disposition: attachment; filename=".$arch."");
$handle = fopen ($arch, "r");
echo fread ($handle, filesize ($arch));
fclose ($arch);
En ninguno de los casos obtengo el archivo correcto, de hecho, el nombre que aparece en la caja de diálogo cuando voy a elegir Abrir o Descargar es el nombre de mi archivo php, no el nombre del archivo que quiero bajar.
Gracias por la ayuda