Boujour tout le monde,

- Bien que cela ne soit pas conforme au fait de laisser le libre choix à l'utilisateur d'un site, je voudrais lors de l'activation d'un lien forcer le téléchargement du document lié plutôt que de l'afficher dans le browser.

Merci d'avance - Salutations
Jey

PS.: Existe-t-il un moyen de rechercher un sujet donné dans les différents forums du site ?
Il faut zipper le fichier pour faire ça.
Si c'est un fichier affichage par le navigateur, il ne sera jamais proposé au téléchargement mais affiché, tu as bien cerné le problème.

Donc, zip, rar, ... n'importe quel archivage du fichier et ça roule Smiley smile
Par contre, n'oublie pas d'indiquer le type d'archivage (fichier zip, rar, ace, ...) pour que le visiteur soit au courant des logiciels nécessaire à la consultation du fichier. Proposer un lien vers le logiciel en question est aussi un plus Smiley cligne
jey a écrit :
- Bien que cela ne soit pas conforme au fait de laisser le libre choix à l'utilisateur d'un site, je voudrais lors de l'activation d'un lien forcer le téléchargement du document lié plutôt que de l'afficher dans le browser.

Il faut l'envoyer avec un type-mime non reconnu par les navigateurs. Classiquement c'est application/force-download qui est utilisé bien qu'il n'ait rien de bien standard.
@ djfeat > non, mauvaise idée, tous les fichiers de ce type mime ne seront pas forcément à télécharger Smiley cligne
Olivier a écrit :
Il faut zipper le fichier pour faire ça.
Si c'est un fichier affichage par le navigateur, il ne sera jamais proposé au téléchargement mais affiché, tu as bien cerné le problème.

Donc, zip, rar, ... n'importe quel archivage du fichier et ça roule Smiley smile
Par contre, n'oublie pas d'indiquer le type d'archivage (fichier zip, rar, ace, ...) pour que le visiteur soit au courant des logiciels nécessaire à la consultation du fichier. Proposer un lien vers le logiciel en question est aussi un plus Smiley cligne


Salut Olivier,

En zippant le fichier cela fonctionne.
Mais le dézippage étant un manip. de trop pour les utilisateurs de mon micro intranet et comme il semble qu'il n'y ait pas de solution "propre" je préfère afficher au survol du lien un message du genre "use save target as to download".
Pour cela je me suis inspiré de >> Un menu avec commentaires au survol.

Encore merci - JEY
djfeat a écrit :

Il faut l'envoyer avec un type-mime non reconnu par les navigateurs. Classiquement c'est application/force-download qui est utilisé bien qu'il n'ait rien de bien standard.


On va éviter dans tous les cas de faire joujou avec les types mimes, svp. C'est un peu plus compliqué que le HTML et les bidouilles javascript.
Olivier a écrit :
@ djfeat > non, mauvaise idée, tous les fichiers de ce type mime ne seront pas forcément à télécharger Smiley cligne

Je comprends pas bien. Si on veut qu'un fichier html s'affiche dans le navigateur on lui donne le type mime kivabien (text/html) mais si on ne veut pas qu'il s'affiche on l'envoie avec application/force-download. C'est comme ça que je voyais la chose.

Laurent Denis a écrit :
On va éviter dans tous les cas de faire joujou avec les types mimes, svp. C'est un peu plus compliqué que le HTML et les bidouilles javascript.

Même pas avec application/x-brocoli ? Smiley langue
Moui, tout comme l'installation d'un logiciel de décompression peut être impossible chez le client...
Pour forcer un Téléchargement on peut aussi utiliser le php mais je ne sais pas si c'est vraiment le bon forum pour poster, faites moi signe....
A plus
djfeat > tu changes pas le type mime d'un fichier !!! tu changes le type mime de tous les fichiers de cette extensions.

Le zip n'est pas plus crade qu'autre chose mais il y a le problème du décompressage en effet.

La solution du "click droit enregistrer sous" est peut être pas la pire en effet, mais en français par pitié !!!!

Sinon, si tu nous disais qu'est ce que c'est, on y verrait peut être une autre solution nan ?
Olivier a écrit :
djfeat > tu changes pas le type mime d'un fichier !!! tu changes le type mime de tous les fichiers de cette extensions.

Bah non. Enfin ça dépend des possibilités du serveur mais par exemple tu peux gérer le type MIME facilement et finement via les .htaccess (AddType ... .ext). On encore avec un langage serveur comme php (header(Content-Type: ...');).

Une extension de fichier ça ne veut rien dire du tout. Si tu conclus quoi que ce soit à partir de l'extension d'un fichier alors tu viens d'inventer le .jpg animé.
Oui, je sais bien que l'extension ne fait pas le type mime, mais dans ton htaccess, c'est l'extension que tu donnes pour indiquer le type mime en fonction de l'extension.
Je me permet de vous dire qu il existe une solution en php avec des liens dynamiques ou NON DYNAMIQUE.
Il y a juste une page php a créer qui est très simple et que vous pouvez trouvez très facilement sur le net........

A moins que je n'ai pas bien compris à la question, les réglages MIME non rien avoir la dedans :

"je voudrais lors de l'activation d'un lien forcer le téléchargement du document lié plutôt que de l'afficher dans le browser"
Modifié par lezard numerique (28 Jul 2005 - 23:22)
Sa donne le lien suivant :
<a href="download.php">T&eacute;l&eacute;charger le fichier</a>



la page php :

<?
header("Content-type: application/force-download");
header("Content-Disposition: attachment; filename=".$file);
readfile($chemin.$file);
?>


que l'on renomme en download.php


Tout simplement mais surement

A plus Smiley cligne
header("Content-type: application/force-download"); => rien à voir avec le type mime... ??

...

...

...

Smiley rolleyes

Oui, c'est une solution, ça demande pas mal de gestion au niveau des fichiers, mais peut être plus simple que le zippage Smiley smile
Non pas plus, une page sur laquelle il y a le lien:

<A href="download.php?chemin=http://www.serveur.com/dossier/
&file=nom_fichier.extension">
T&eacute;l&eacute;charger le fichier</A>


Puis un seule page php qui fera ouvrir le fichier demander par 2 variables :

le dossier :$chemin
le fichier :$file

<?
header("Content-type: application/force-download");
header("Content-Disposition: attachment; filename=".$file);
readfile($chemin.$file);
?>

En effet si tu a plusieurs niveaux dans ton site, tu dois creer un dossier download par niveaux comme tes fonctions "_include".

Je crois avoir répondu à ta question le reglage MIME c'est possible mais je croyais que tes collègues ne voulais pas gérer le Dézzipage. Smiley cligne

A plus
Modifié par lezard numerique (29 Jul 2005 - 11:01)
Olivier a écrit :
Oui, je sais bien que l'extension ne fait pas le type mime, mais dans ton htaccess, c'est l'extension que tu donnes pour indiquer le type mime en fonction de l'extension.

Tu mets les fichiers dont tu veux forcer le téléchargement dans un dossier dans lequel tu mets ton .htaccess avec AddType et basta. Les autres fichiers ne seront pas concernés.
djfeat a écrit :

Tu mets les fichiers dont tu veux forcer le téléchargement dans un dossier dans lequel tu mets ton .htaccess avec AddType et basta. Les autres fichiers ne seront pas concernés.


Oui okay pour cette méthode, mais c'est bien un réglage de type MIME, et l'extension ne fait pas un type MIME mais permet d'identifier les éléments à cibler.