Foros del Web » Programando para Internet » PHP »

Descargar archivo

Estas en el tema de Descargar archivo en el foro de PHP en Foros del Web. Hola, quería saber como puedo hacer un fichero que cuando se pinche, descargue un fichero (un gráfico, un pdf,...) Muchas gracias y un saludo....
  #1 (permalink)  
Antiguo 17/06/2003, 05:24
 
Fecha de Ingreso: julio-2002
Ubicación: Elche
Mensajes: 153
Antigüedad: 15 años, 5 meses
Puntos: 0
Descargar archivo

Hola, quería saber como puedo hacer un fichero que cuando se pinche, descargue un fichero (un gráfico, un pdf,...)

Muchas gracias y un saludo.
__________________
Hazlo o no lo hagas, pero nunca lo intentes

www.clubfronteniselche.com
  #2 (permalink)  
Antiguo 17/06/2003, 05:31
Avatar de Cain  
Fecha de Ingreso: enero-2002
Ubicación: Catalunya
Mensajes: 6.459
Antigüedad: 15 años, 11 meses
Puntos: 17
Esos es una pregunta de HTML.

<a href="ruta/archivo.extension">Archivo</a>
__________________
M a l d i t o F r i k i
  #3 (permalink)  
Antiguo 17/06/2003, 06:27
 
Fecha de Ingreso: julio-2002
Ubicación: Elche
Mensajes: 153
Antigüedad: 15 años, 5 meses
Puntos: 0
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.
__________________
Hazlo o no lo hagas, pero nunca lo intentes

www.clubfronteniselche.com
  #4 (permalink)  
Antiguo 17/06/2003, 12:24
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Pues estás ante el eterno problema de las cabeceras HTTP para descarga que cada navegador (particularmente los de M$) se lo pasan por el ... los standares ...


Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #5 (permalink)  
Antiguo 20/06/2003, 03:41
 
Fecha de Ingreso: julio-2002
Ubicación: Elche
Mensajes: 153
Antigüedad: 15 años, 5 meses
Puntos: 0
Pues por mis.... estandares que voy a encontrar la manera, voy a destripar el phpMyAdmin, que en la opción de descargar la estructura de la tabla si que lo hace bien.

Un saludo, y gracias.
__________________
Hazlo o no lo hagas, pero nunca lo intentes

www.clubfronteniselche.com
  #6 (permalink)  
Antiguo 20/06/2003, 11:58
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Sip .. DaneelR ..

phpMyadmind lo que hace es:
1) identifica el navegador y versión
2) compone las cabeceras HTTP más adecuadas para cada navegdor
3) manda el archivo al navegador (el echo $archivo ..)

Es más .. las rutinas están por ahí desperdigadas pero ya las encontraras (en su time() ya lo destripé yo tambien jejeje)

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 19:09.