Rechercher : dans
Par :

Forcer le telechargement en PHP

Dernière réponse le 5 oct 2007 à 15:41:28 JI, le 28 jui 2002 à 17:51:42 
 Signaler ce message aux modérateurs

   Bonjour

J'utilise le script suivant pour forcer le telechargement

Voici enfin le script pour forcer le telechargement d'un fichier .doc, .jpg, .xls, ouverts automatiquement par le navigateur.

Dans la page où se trouve le lien hypertexte du fichier à telecharger


<?php
...
$filname=nom du fichier à downloader;
$dir= "chemin complet vers le fichier/".$filname;
...
?>
...
<a href="download.php?dir=<?=$dir?>&filname=<?=$filname?>">download</a>
...




Dans le fichier download.php ecrire ce simple code:


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


Cela marche tres bien sur free.fr, mais chez mon nouvel hebergeur le nom du fichier est toujours download.avi (avi est un exemple)
Le contenu du fichier est le bon mais le nom me pose pb

Dans header("Content-Disposition: attachment; filename=$filname"); on dirai que filename prend la valeur du nom du fichier download.php3 ... Bref A L'AIDE ..

JI

Meilleures réponses pour « Forcer le telechargement en PHP » dans :
[PHP] Upload de fichiers VoirLe langage PHP permet de gérer des fichiers envoyés (uploadés) grâce à un formulaire HTML. Formulaire d'envoi de fichiers Configuration de PHP pour permettre l'upload Récupération du fichier avec PHP Formulaire d'envoi de fichiers La...
Télécharger de la musique légalement et gratuitement - Beezik VoirTous les téléchargements de musiques protégées par des droits d'auteurs ne sont pas forcément payants pour le demandeur. En effet, Beezik par exemple, permet de télécharger des titres gratuitement, simplement en ayant la contrainte de regarder une...
Installation rapide de LAMP (Apache+MySql+php) sous Linux VoirLAMP = Linux+Apache+MySql+Php. C'est le serveur web par excellence. L'ensemble est facile à installer. Installation rapide sudo aptitude install apache2 php5 mysql-server php5-mysql libapache2-mod-php5 Le mot de passe administrateur mySQL...
Télécharger PHP Edit VoirPHPEdit est un environnement de développement intégré (IDE) sous Windows pour le langage PHP. Il offre un grand nombre de fonctionnalités permettant de développer plus efficacement : Coloration syntaxique Auto-complétion des fonctions Débuggeur...
PHP - Les fichiers VoirLa gestion des fichiers avec PHP Avec PHP, la création ou la lecture de fichiers est, une fois de plus, assez simple. Il existe une multitude de fonctions dédiées à l'utilisation des fichiers. La communication entre le script PHP et le fichier...
Installation de EasyPHP VoirIntroduction à EasyPHP Afin de faire fonctionner PHP, il est nécessaire à la base d'en télécharger les sources depuis un site spécialisé (par exemple PHP.net), puis de compiler celui-ci (ainsi que d'éditer les liens) afin de créer un fichier...

1

JI, le 30 jui 2002 à 17:56:18

Allez j suis sympa je vous laisse une chance de me repondre ;)

Répondre à JI

2

Vegeta, le 30 jui 2002 à 22:46:40

Ton envoi de header n'est pas très correct, il ne marchera pas avec tous les browsers, regarde celui que j'ai donné à cette adresse < http://www.commentcamarche.net/forum/affich.php3?cat=3&ID=127458&page=1> (je l'ai pris dans la source de phpMyAdmin).

Répondre à Vegeta

3

JI, le 31 jui 2002 à 17:59:06

Merci pour l'info, j'en prend bonne note. Mais ceci ne regle pas monPb ;) Car c coté serveur que se trouve le PB

Qqun aurait une idée?

Répondre à JI

4

Dud, le 1 aoû 2002 à 15:27:27

Salut,

Elle est vachement bien ta question : j'ai eu le même problème et je n'ai jamais réussi à le faire passer. De mémoire je crois que j'ai été obligé d'utiliser une astuce : j'ai fait une redirection. J'ai utilisé l'erreur 302 je crois et j'ai mis un header(Location : <urlfichier>).
Pas très joli, je te l'accorde... Mais bon. Je ne peux pas t'assurer que cela marche parce que pour moi, le serveur Php que j'utilisais n'acceptais pas les header d'erreur HTTP, tu aura peut être plus de chance...

Répondre à Dud

5

JI, le 2 aoû 2002 à 09:48:27

Merci Dud j'essairai ca si jamais je ne trouve pas d'autre solution!

Répondre à JI

6

 Dud, le 2 aoû 2002 à 11:00:25

Salut,
Si tu trouves une autre solution, tu pourras me la filer, STP ?

Dud

Répondre à Dud
Collection CommentÇaMarche.net