[PhP] Forcer le download.

Résolu
Zep3k!GnO Messages postés 2025 Date d'inscription   Statut Membre Dernière intervention   -  
 postgresophil -
Bonjour à tous.
Je voulais savoir comment on fait en PhP pour forcer l'utilisateur à télécharger un document (mon cas un PDF).
Que lorsque l'on clic sur le lien, on ait l'invite de télécharegement qui s'affiche.
Je sais que c'est avec des hearders mais je ne me souviens plus bien...
Merci à vous !
A voir également:

23 réponses

A. nonyme
 
Bonjour,

Je voulais utiliser un code similaire à celui-ci dessus pour crée un fichier téléchargeable et ca en temp réel, je connais d'avance la taille final (on va dire 750ko pour l'exemple) donc je l'indique dans l'header ainsi que le nom.

J'ai volontairement mis seulement un readfile avec un fichier plus petit (on va prendre par exemple 500ko) que le resultat final pour simuler une erreur ou bug de programmation dans l'une des routines de création à la volée.

Lorsque IE commence le téléchargement, il m'affiche la taille et le nom voulu par les header, il commence à telecharger les 500 premiers ko, il s'arrete mais au lieu d'afficher une erreur, il fait comme s'il avait réussi à télécharger le fichier sauf qu'il fait 500ko alors qu'il avait annoncé 750ko au démarrage du téléchargement.

Est-ce qu'il y a un moyen d'éviter qu'un telechargement incomplet pour cause de plantage soit affiché comme réussi ? (un peu comme quand la connexion est interrompue)

Est-ce une précision dans l'header qui force la verification ? Est-ce qu'il faut envoyer quelques choses pour signaler l'erreur ?

Merci d'avance.
-1
wence
 
tout c'est trucs sont du bla bla bla. esait le accelerator plus. et tu va voir. lolll.
-1
geek1983
 
Pour ceux qui inclue force-download.php à leur script et qui ont le problème de la page blanche après l'exécution de force-download.php la solution est de l'appeler via un iframe invisible.

Ex: echo '<iframe style="display:none" src="download.php?file='.$file.'&event='.$event_name.'"></iframe>';
-2