Comment forcer le téléchargement d'un fichier

Soyez le premier à donner votre avis sur cette source.

Vue 46 035 fois - Téléchargée 5 914 fois

Description

Lorsqu'on met un lien vers un fichier dans une page web, il arrive que celui-ci soit directement ouvert au lieu d'être téléchargé. Dans ce cas pour télécharger le document, l'utilisateur doit cliquer sur le bouton droit de la souris et choisir "enregistrer la cible sous...", ce qui n'est pas très pratique.

Pour que le navigateur n'ouvre pas le fichier et qu'il le propose directement en téléchargement, il faut utiliser un langage dynamique, ici du jsp. Une solution équivalente existe aussi en php à ma connaissance.

J'ai mis 2 fichiers dans le zip :
- testDownloadFile.html qui montre comment écrire un lien ou un bouton permettant le téléchargement d'un document

- downLoadFile.jsp, qui est appelé lorsqu'on clique sur le lien ou le bouton de testDownLoad.html, et qui s'occupe de forcer le téléchargement

Pour faire fonctionner ces fichiers, il faut remplacer dans le fichier html le nom du document à télécharger par un des votres, et il faut mettre dans le fichier jsp le chemin du répertoire qui contient ce document.

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
2
Date d'inscription
samedi 16 avril 2011
Statut
Membre
Dernière intervention
8 juin 2012

Merci Bq
Messages postés
3
Date d'inscription
lundi 6 décembre 2004
Statut
Membre
Dernière intervention
8 janvier 2008

hello

j'aimerais bien utilisé ce script sur mon site qui est full flash
j'ai tenté ce script sur mon bouton qui lance le telechargement

on(release)
{
getURL ("downloadFile.jsp?file="+ _global.urlLightbox);
}

ou _global.urlLightbox est l'url complete du fichier...j'ai supprimé les infos de chemin dans le script .jps pusique ma variable file contient deja toutes les infos...mais lors du clic ca me propose de charger le fichier jsp et non l'image contenue dans l'url...
est ce que qqun a une idée ??

merci d'avance
Messages postés
163
Date d'inscription
mercredi 31 décembre 2008
Statut
Membre
Dernière intervention
8 mai 2011

ça marche pas du tous peux importe la modification apporter je télécharge tous le temps le fichier downloadFile.jsp.
c'est pas normal.
et une fois adapter à mon site une page d'ereur s'ouvre quand on le test.
quelqu'un aurai quelque chose qui fonctionnerai?
Messages postés
1
Date d'inscription
vendredi 14 mars 2008
Statut
Membre
Dernière intervention
14 mars 2008

<%@ page import="java.util.*,java.io.*"%><%

File f = new File ("http://s3.archive-host.com/membres/playlist/90636913221784611/Musiques_libres/Acoustique/" + request.getParameter("file") );

response.setContentType ("unknown/unknown");

response.setHeader ("Content-Disposition", "attachment; filename="Deschansons.mp3" + request.getParameter("file") + """);

InputStream in = new FileInputStream(f);
ServletOutputStream outs = response.getOutputStream();
try {
int bit = in.read();
while ((bit) >= 0) {
outs.write(bit);
bit = in.read();
}
} catch (Exception e) {
e.printStackTrace(System.out);
}
outs.flush();
outs.close();
in.close();
%>
voici le code que j'ai mis d'apres les instructions, mais il quand je lance le lien il me montre cette page de codes, pourquoi ?

voici le html :
document
Messages postés
1
Date d'inscription
vendredi 11 novembre 2005
Statut
Membre
Dernière intervention
7 février 2008

Simple, efficace !
Afficher les 27 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.