Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/10/2012, 09:20
rbczgz
 
Fecha de Ingreso: noviembre-2003
Ubicación: Zaragoza, España
Mensajes: 1.257
Antigüedad: 20 años, 5 meses
Puntos: 154
No funciona la descarga de un pdf mediante header()

Hola amig@s,

Estoy revisando y repasando todo lo que he podido encontrar y no consigo entender porque no funciona este código:

Código PHP:
Ver original
  1. <?php
  2.  
  3. $fichero = "carpeta_del_archivo/".$archivo; // aqui la ruta al archivo pdf
  4. if (file_exists($fichero)) {
  5.     header ("Expires: Thu, 27 Mar 1980 23:59:00 GMT"); //la pagina expira en una fecha pasada
  6.     header ("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); //ultima actualizacion ahora cuando la cargamos
  7.     header ("Cache-Control: no-cache, must-revalidate"); //no guardar en CACHE
  8.     header ("Pragma: no-cache");
  9.     header ("Content-Description: File Transfer");
  10.     header ("Content-type: application/force-download");
  11.     header ("Content-type: application/pdf");
  12.     header ("Content-Disposition: attachment ; filename=".$archivo);
  13.     header ("Content-Transfer-Encoding: binary");
  14.     header ("Expires: 0");
  15.     header ("Content-Length: " . filesize($archivo));
  16.     ob_clean();
  17.     flush();
  18.     readfile($fichero);
  19.     exit;
  20. }else{
  21.  
  22. ?>
  23. <p>Archivo inexistente</p>
  24. <?php
  25.  
  26. }
  27.  
  28. ?>

Lo que hace es que me muestra en pantalla toooodos los símbolos raros que se le ocurren al navegador, creo que es el código del pdf que pretendo descargar, pero no me lo descarga ni me lo muestra en pantalla, lo que necesito es descargarlo sí o sí.

Lo he probado en IE, FF y Chrome por si era problema del navegador, pero no funciona en ninguno...

¿Alguien puede echarme una mano?

Gracias por adelantado.

.