Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   HTML, Javascript y otros (https://www.clubdelphi.com/foros/forumdisplay.php?f=38)
-   -   Forzar descarga de archivo. (https://www.clubdelphi.com/foros/showthread.php?t=50437)

ixMike 17-11-2007 16:39:57

Forzar descarga de archivo.
 
Hola a todos.

Tengo un problemilla. Me gustaría saber cómo hacer para poner un enlace en mi página que fuerce la descarga de un archivo (esto es, que te salga el diálogo de Guardar archivo en disco). Buscando por los foros encontré algo, pero que yo ya sabía, y que no es suficiente:

Código PHP:

<a href="miarchivo.ext">Descargar aquí</a


No me sirve por la siguiente razón: si el archivo enlazado es un PDF (o HTML, o algún otro) se me abre en la ventada del navegador (IE, FireFox...). Entonces me gustaría saber cómo hacer para que ni se abra en el navegador, ni tampoco pregunte si lo quiere abrir o descargar, sino que de golpe y porrazo le pregunte dónde quiere guardarlo.


Saludos, y gracias.

dec 17-11-2007 16:56:14

Hola,

Con PHP, por ejemplo, creo que se podría hacer algo, pero, desde HTML creo que no, puesto que, en cierto modo, es el usuario el que decide qué hacer con según qué tipos de archivos. Es el navegador quien guarda las preferencias del usuario y actúa en consecuencia.

Por ejemplo, al menos en Firefox, tú puedes forzar que cuando haces clic en un enlace "lo que sea" se abra en una ventana nueva, y, si esto es así, poco puede hacerse desde la página web que sea, digamos que el usuario "manda" en este caso.

Desde PHP tal vez se pueda hacer algo, porque, pueden enviarse las cabeceras HTTP necesarias para "forzar" la descarga de un archivo, no su "lectura", pero, ya digo, desde HTML me parece a mí que no se puede hacer nada...

Buscando un poco por Internet se encuentra lo que puede ser un "hack" para conseguir lo que quieres, o algo parecido, pero, en todo caso, creo que únicamente valdría para userse en Internet Explorer.

Pero lo mismo me equivoco. Tal vez otro compañero... :)

pcicom 17-11-2007 22:11:22

Código:

<html>
<head>
<meta http-equiv='refresh' content='0;URL=http://www.tudominmio.com/tuarchivo.ext'>
</head>
<title>Descarga Directa </title>
<body>
</body>
</html>


ixMike 18-11-2007 03:48:10

¡Gracias, pcicom!:D

De hecho, iba a sugerirlo, pero lo olvidé al poner el post :o (páginas de descarga directa, ¿no?).

Salu2.

ixMike 18-11-2007 03:54:42

Vaya, lo acabo de probar y parece que no funciona. Hace lo mismo que <a href="http://www.dominio.net/miarcho.ext">Descargar</a>

Bueno, creo que al final lo comprimiré el zip (seguro que no se abre en el navegador y me ahorro unos bytes ;)).

Salu2 de nuevo.

pcicom 18-11-2007 19:46:26

Cita:

Empezado por ixMike (Mensaje 246894)
¡Gracias, pcicom!:D

De hecho, iba a sugerirlo, pero lo olvidé al poner el post :o (páginas de descarga directa, ¿no?).

Salu2.

No no son de "DESCARGAS DIRECTA" , lo uso en mi pagina web, para descargar archivos al accesar a una direccion web, y si funciona en mi servidor

solo tienes que agregarlo entre el CODIGO HTML dentro de

archivo descarga.html

Código PHP:

<HTML>
<
HEAD>
<
meta http-equiv='refresh' content='0;URL=http://www.dominio.com/test.extencion'>
</
HEAD>
<
TITLE>descarga</html>
<
BODY>
...
</
BODY>
</
HTML


en tu navegador pondrias

http://www.dominio.com/descarga.html

Y LISTO..


La franja horaria es GMT +2. Ahora son las 00:49:43.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi