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

0/5 (27 avis)

Vue 46 502 fois - Téléchargée 5 940 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
ysingnu Messages postés 2 Date d'inscription samedi 16 avril 2011 Statut Membre Dernière intervention 8 juin 2012
8 juin 2012 à 16:05
Merci Bq
mrdeejai Messages postés 3 Date d'inscription lundi 6 décembre 2004 Statut Membre Dernière intervention 8 janvier 2008
26 juil. 2010 à 16:52
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
puma67000 Messages postés 163 Date d'inscription mercredi 31 décembre 2008 Statut Membre Dernière intervention 8 mai 2011
7 avril 2009 à 15:25
ç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?
mazedu62 Messages postés 1 Date d'inscription vendredi 14 mars 2008 Statut Membre Dernière intervention 14 mars 2008
14 mars 2008 à 15:38
<%@ 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
hyphenx Messages postés 1 Date d'inscription vendredi 11 novembre 2005 Statut Membre Dernière intervention 7 février 2008
7 févr. 2008 à 15:48
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.