Foros del Web » Programando para Internet » PHP »

forzar descarga de un fichero

Estas en el tema de forzar descarga de un fichero en el foro de PHP en Foros del Web. Hola a todos, Tengo el siguiente codigo, en una clase, para forzar la descarga del fichero function descargar_fichero() { $file=$this->_valores['nombre_fichero']; //Se ha creado un objeto ...
  #1 (permalink)  
Antiguo 04/07/2005, 01:44
 
Fecha de Ingreso: junio-2005
Ubicación: Barcelona
Mensajes: 458
Antigüedad: 18 años, 10 meses
Puntos: 4
forzar descarga de un fichero

Hola a todos,

Tengo el siguiente codigo, en una clase, para forzar la descarga del fichero
function descargar_fichero()
{

$file=$this->_valores['nombre_fichero'];
//Se ha creado un objeto mensaje en que uno de sus campos es el nombre dle fichero que etsa asociado a dicho mesaje

$path_archivo=ruta completa de donde estan los ficheros';
$enlace = $path_archivo.$file;

header ("Content-Disposition: attachment; filename=".$file."");
header ("Content-Type: application/octet-stream");
header ("Content-Length: ".filesize($enlace));
readfile($enlace);
}

si embargo este codigo me da todo tipo de errores, cosa que la verdad no entiendo porque antes me funcionaba bien el problema ha sido al meterlo en la clase

concretamente me da error en los 3 header

Cannot modify header information - headers already sent by (output started at <ruta donde esta el fichero de la clase>)
Identico error en los 3

Agradeceria qualquier ayuda

saludos
  #2 (permalink)  
Antiguo 05/07/2005, 00:40
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
Seguro no mandas a imprimir nada antes???.... no debes tener salida de ningún tipo (ningún echo, print y afines).

www.php.net/header
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
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 16:47.