Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Problema al forzar descarga de archivos txt php

Estas en el tema de Problema al forzar descarga de archivos txt php en el foro de PHP en Foros del Web. Estoy trabajando en la descarga de un archivo txt, tome codigo que encontre en la red y parece que todo funciona perfectamente. El problema está ...
  #1 (permalink)  
Antiguo 17/10/2013, 16:04
 
Fecha de Ingreso: octubre-2013
Mensajes: 3
Antigüedad: 10 años, 6 meses
Puntos: 0
Problema al forzar descarga de archivos txt php

Estoy trabajando en la descarga de un archivo txt, tome codigo que encontre en la red y parece que todo funciona perfectamente. El problema está en el contenido del fichero después de su descarga: me muestra el código html de la página y no lo que realmente contiene...

$TheFile = basename($archivo);

header("Content-Type: application/force-download");
header('Content-Type: text/plain');
header("Content-Length: " . filesize($archivo));
header("Content-Disposition: attachment; filename=$TheFile");


$fp = fopen($archivo, "r");
fpassthru($fp);

El contenido el archivo es XXXXXXXXXX

pero me muestra lo siguiente:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
.......
..........
......... (Con el resto del contenido html)


****ya probe con flush() y no me funciona
  #2 (permalink)  
Antiguo 17/10/2013, 18:23
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Problema al forzar descarga de archivos txt php

Al enviar encabezados para forzar descarga de un archivo, todo lo que envíes después será parte de ese mismo archivo.

Por cierto, es más fácil usar readfile() que fopen() y funciones relacionadas. Además, también debes verificar que el archivo realmente exista antes de iniciar la descarga.
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 23/10/2013, 16:17
 
Fecha de Ingreso: octubre-2013
Mensajes: 3
Antigüedad: 10 años, 6 meses
Puntos: 0
Respuesta: Problema al forzar descarga de archivos txt php

ya quedo solucionado!!

Al final el codigo quedo:

$archivo = 'C:/wamp/www/scpeg/app/webroot/L_2147483647_08_Oct_2013_15_53_08.txt';

$TheFile = basename($archivo);
header('Content-Description: File Transfer');

ob_end_flush();

header('Content-Type: text/plain');
header('Content-Disposition: attachment; filename=' . $TheFile);

header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($archivo));
ob_clean();
flush();
readfile($archivo);

Etiquetas: html, txt
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:52.