(php)permettre de voir ou télécharger un doc

Résolu
guillaume_74 Messages postés 111 Date d'inscription   Statut Membre Dernière intervention   -  
guillaume_74 Messages postés 111 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
J'ai des documents stockés sur mon serveur, et j'aimerai permettre au gens de télécharger (ou voir) ces documents.
Donc en php...
Jusque la, j'avais utilisé "readfile" en initialisant les paramètre "header" auparavant, mais trop de bugs sont liés à cette méthode (fait n'importe quoi sur IE6, et lorsqu'il s'agit d'un fichier .txt, il m'injecte le l'html de ma page dans le fichier texte ==> pas terrible...)

Bref, comment faire alors pour télécharger/ voir un doc avec un script php? voir même javascript, mais comme c'est coté client, je doute que cela soit possible.

Merci d'avance a ceux qui pourront m'apporter leur aide =)
A voir également:

3 réponses

guillaume_74 Messages postés 111 Date d'inscription   Statut Membre Dernière intervention   22
 
Personne ne sait faire?
0
guillaume_74 Messages postés 111 Date d'inscription   Statut Membre Dernière intervention   22
 
Je pense avoir trouvé mon problème, c'est qu'il y a un affichage HTML dans la page ou j'appelle le "header" c'est possible que cela vienne de la?
0
guillaume_74 Messages postés 111 Date d'inscription   Statut Membre Dernière intervention   22
 
Bon (même si tout le monde s'en fou...) j'ai trouvé le problème, il faut faire un "exit" a la fin du code!
$path='documents/'. $document;
$document=strtolower($document);
@ob_end_clean();
@ob_clean();
@ini_set('zlib.output_compression', 'Off');

header('Pragma: public');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Cache-Control: public');
header('Content-Type: application/force-download');
header('Content-Type: application/octet-stream');
header('Content-Type: application/download');
header('Content-Disposition: attachment; filename="'.basename($path).'";');
header('Content-Transfer-Encoding: binary');
header('Content-Length: ' . filesize($path));
flush();
readfile($path);
exit();

Et maintenant ca marche bien ;)
0