Entrar Regístrate
 
Forzar descarga de archivos con headers en php
#1 ·

necesito ayuda porfa al intentar de forzar la descarga de un archivo con php

<?php

$url = $_SESSION['ruta']."/".$_SESSION['archivosae'];

header ("Content-Disposition: attachment; filename=SAEREGULAR.SAE" );
header ("Content-Type: application/force-download");
readfile($url);
exit;
?>

me descarga bien el SAEREGULAR.SAE

pero el archivo al abrirlo no solo sale lo que contiene el archivo sino que contiene html

<!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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
</head>
<body>
<p>
CZD12222286DFV6;4:H574<$^HZTOJGJ&KJ[IGZOG&TGIOUTGR&GTJXKY&HKRRU&&&&&&&&&& &&&&&&&&&&&&79689697897;78A7:89<JbL9<LdN=<=>,,,,,,,


Cuando solo deberia bajarme lo que esta debajo de la etiqueta <p>, que deberia ser esto: 

CZD12222286DFV6;4:H574<$^HZTOJGJ&KJ[IGZOG&TGIOUTGR&GTJXKY&HKRRU&&&&&&&&&& &&&&&&&&&&&&79689697897;78A7:89<JbL9<LdN=<=>,,,,,,,


fb@1256920766
Usuario Novato
Usuario Novato
Haz clic para ver el perfil del usuario
Mensajes: 2
Desde: 13/Dic/2013
·
#2 · · Editado por GestionXls

Hace ya un tiempito que no tengo necesidad de programar esta funcionalidad, en su momento experimente diversos problemas, he aqui la secuencia que me dio resultado:

// hay una larga lista de content-type, por ejemplo:
header('Content-Type:application/octet-stream'); // rar
header('Content-Type:text/plain'); // txt, html, etc

// más esto:
header('Content-Type:application/force-download');
header('Content-Description:File Transfer');
header('Pragma:public');
header('Expires:0');
header('Cache-Control:no-cache,must-revalidate,post-check=0,pre-check=0');
header('Cache-Control:private,false');
header("Content-Disposition:attachment;filename={$fn}");
header('Content-Length:'.filesize( $fn ));
@readfile( $fn );
die();


GestionXls
@man / @woman
@man / @woman
Haz clic para ver el perfil del usuario
Mensajes: 4.001
Desde: 02/Ago/2008
· ·
#3 ·

@GestionXls,

Gracias Amigo ;) el unico problema ahora es que me lo descarga bien pero solo localmente, cuando lo subo al hosting y intento descargar me sale este error:

Cita:

Warning: filesize(): stat failed for SIST_SAE/Licencias/LARA/BQTO CENTRO/SAEREGULAR.RRGG001_00000195 in /home/u997603911/public_html/plantel/diradepe/licencia.php on line 19

La verdad habia parado esta parte por mucho tiempo por no tenerle una solucion :S

Utilizo el wampserver, cuando lo corro por localhost me funciona

Cita:

<?php
include("../connect.php");
?>
<?php

$url = $_GET['hidRuta']."/".$_GET['hidArchivosae'];
// hay una larga lista de content-type, por ejemplo:
header('Content-Type:application/octet-stream'); // rar
header('Content-Type:text/plain'); // txt, html, etc

// más esto:
header('Content-Type:application/force-download');
header('Content-Description:File Transfer');
header('Pragma:public');
header('Expires:0');
header('Cache-Control:no-cache,must-revalidate,post-check=0,pre-check=0');
header('Cache-Control:private,false');
header("Content-Disposition:attachment;filename={$_GET['hidArchivosae']}");
header('Content-Length:'.filesize( $url ));
@readfile( $url );
die();
?>


fb@1256920766
Usuario Novato
Usuario Novato
Haz clic para ver el perfil del usuario
Mensajes: 2
Desde: 13/Dic/2013
·
#4 ·

1) deberías buscar e identificar la línea 19 de licencia.php

2) estimo que en ella encontrarás la instrucción que da problemas (stat, filesize u otra), puede ser que esté desactivada o algún otro factor que impide su ejecución. Revisa la lista de funciones deshabilitadas y las librerías conque se compiló el Php que esté utilizando ese hosting.


GestionXls
@man / @woman
@man / @woman
Haz clic para ver el perfil del usuario
Mensajes: 4.001
Desde: 02/Ago/2008
· ·
ATENCIÓN: Este tema no tiene actividad desde hace más de 6 MESES,
te recomendamos abrir un nuevo tema en lugar de responder al actual
Foro de soporte · Espacio WEB · PHP
Opciones:
Versión imprimible del tema
Subscríbete a este tema
Date de baja de este tema
Ir al subforo:  
TU NO PUEDES Escribir nuevos temas en este foro
TU NO PUEDES Responder a los temas en este foro
TU NO PUEDES Editar tus propios mensajes en este foro
TU NO PUEDES Borrar tus propios mensajes en este foro
Ahora son las 05:44 UTC+02:00 DST
Temas similares
No se han encontrado temas similares