Me he explicado mal, lo que quiero es que directamente salga el dialogo de descarga. He probado esto (fichero llamado descargar.php):
header("Last-Modified: " . gmdate("D, d M Y H:i:s T", filemtime($fichero)));
header("Pragma: no-cache");
header("Expires: 0");
header("Content-Transfer-Encoding: binary");
header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=".$fichero);
$fp = fopen($fichero,'rb');
if(!$fp)
{
header("Location:
http://localhost/error1.html");
exit;
}
if(!fpassthru($fp))
{
header("Location:
http://localhost/error2.html");
exit;
}
En Mozilla si que al abrir el diálogo de descarga, pone el nombre de fichero que guardo (p.ej.: pepe.gif), pero en Explorer sale el nombre del fichero php, y sale el diálogo para guardar un fichero descargar sin extensión conocida, ¿sabe alguien que cabeceras hay que utilizar para Explorer?
Un saludo.