(PHP)readfile pb avec IE6

Fermé
guillaume_74 Messages postés 111 Date d'inscription samedi 18 octobre 2008 Statut Membre Dernière intervention 29 juillet 2010 - 14 déc. 2009 à 11:29
vordano Messages postés 1685 Date d'inscription mardi 12 juillet 2011 Statut Membre Dernière intervention 20 juillet 2012 - 16 janv. 2012 à 16:33
Bonjour,
J'ai créé un script en php permettant de déposer des fichiers sur un serveur, et de les récupérer avec une fenêtre de téléchargement.
Pour lire le fichier, j'utilise un "readfile".
Tout fonctionne très bien dans les versions de firefox (aucun problème a signaler) tout fonctionne pour IE7 et 8.
Or, lorsque que je travaille avec IE6... j'ai un problème, quand je télécharge un fichier pour l'ouvrir, il me dit:
"Impossible de trouver le fichier "C:\Document And Settings\MyLogin\Local Settings\Tamporary Internet Files\Content.IE5\A6[...]6Y\mon_fichier[1].txt"
et donc... plantage!
Rien a faire... je sais pas si c'est parceque j'utilise "Internet Explorer Collection".
Mon code php est le suivant:
//$document, le nom du document a ouvrir
header("Content-disposition:  attachment; filename=$document");//attachment;
		header("Content-Type: application/force-download");//header("Content-Type: image/jpeg");
		header("Content-Transfer-Encoding: $type\n"); // Surtout ne pas enlever le \n
		header("Content-Length: ".filesize(realpath('upload/documents'.$document)));
		header("Pragma: no-cache");
		header("Cache-Control: no-cache, must-revalidate");
		header("Expires: 0");
		ob_end_clean();
		flush();		
		readfile(realpath('upload/documents'.$document));

PS: le problème ne provient pas de realpath (qui est quelque chose que j'ai testé pour voir si c'était le problème...
Si quelqu'un voit de quoi ce problème peut venir...
A voir également:

8 réponses

guillaume_74 Messages postés 111 Date d'inscription samedi 18 octobre 2008 Statut Membre Dernière intervention 29 juillet 2010 22
14 déc. 2009 à 14:26
Ce problème n'est vraiment que sur IE6 ... et inférieur... la, je suis en train de voir s'il y a un autre moyen de télécharger des documents sur le serveur...
0
toto1983 Messages postés 205 Date d'inscription samedi 16 mai 2009 Statut Membre Dernière intervention 25 mars 2010 13
14 déc. 2009 à 14:34
Alors la version de IE6 ne prends probablement pas en charge le téléchargement de fichiers. Je te suggère de ne pas trop passer de temps là-dessus, à moins que ton entourage utilise encore IE6 :/ j'en doute.
A mon avis si ton code fonctionne, sur les dernières versions de ie et sur ff, c'est que c pas ça le problème.
C ie(66)6 niahahahahahaaaaa !!!
je blague
0
guillaume_74 Messages postés 111 Date d'inscription samedi 18 octobre 2008 Statut Membre Dernière intervention 29 juillet 2010 22
14 déc. 2009 à 14:54
Nan mais les clients de ma boite utilisent encore en parti IE6, il faut que le code fonctionne dans la majeur partie des cas... Donc, même si je suis du même avis que toi, je dois faire en sorte que ca fonctionne sur IE6, c'est pour ca... la, je cherche une solution de contournement.

Mais merci^^
0
toto1983 Messages postés 205 Date d'inscription samedi 16 mai 2009 Statut Membre Dernière intervention 25 mars 2010 13
14 déc. 2009 à 15:12
Ok mais il me semble que j'avais eu le même souci que toi. essaie de créer un code propre à ie6 qui marche avec ie6 et tu exécute pas ton code qui marche sur les autres navigateurs mais tu exécute un code différent qui marche sur ie6 :
if ( strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE 6' ) !== TRUE)
//fonction IE6
else
// fonction autres navigateurs

après je sais pas si je pourrais aller jusqu'au bout avec toi :)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
guillaume_74 Messages postés 111 Date d'inscription samedi 18 octobre 2008 Statut Membre Dernière intervention 29 juillet 2010 22
14 déc. 2009 à 15:16
Aller jusqu'au bout? =)
Alala! Ben merci, c'était ce que j'avais pensé faire.. juste, faut trouver ce qui fonction avec IE6.. d'après mes brève recherche j'ai pu voir "active x" mais appelé avec du javascript (donc jsuis septique^^ ) 'fin bon, jvais bien trouver quelque chose
0
toto1983 Messages postés 205 Date d'inscription samedi 16 mai 2009 Statut Membre Dernière intervention 25 mars 2010 13
14 déc. 2009 à 15:20
Moi ctait avec du css que j'avais eu des soucis. Tu as sans doute une longueur d'avance par rapport à moi, je pense que tu y arriveras ;)
0
Un peu tard mais si ça peut aider quelqu'un ....

if (strstr ($_HTTP_USER_AGENT, "MSIE")) {
header ("Pragma: public");
header ("Expires: 0");
header ("Cache-Control: doit-revalider, post-check = 0, pré-check = 0");
header ("Content-Type: application de téléchargement; name=\"$sFilename\"");
header ("Content-Length: $iTaille");
header("Content-Disposition: attachment; filename=\"$sFilename\"");
header ("Content-Transfer-Encoding: binary");
} else {
header ("Content-Type: application de téléchargement; name=\"$sFilename\"");
header ("Content-Length: $iTaille");
header("Content-Disposition: attachment; filename=\"$sFilename\"");
}
0
vordano Messages postés 1685 Date d'inscription mardi 12 juillet 2011 Statut Membre Dernière intervention 20 juillet 2012 316
16 janv. 2012 à 16:33
salut,

tu pourrais aussi conseiller aux clients de ta boite d'upgrader vers ie 7 ou +, histoire d'éviter certaines failles de sécurité (et entre autre te faciliter le boulot)

c'est pas pour rien que même microsoft conseille d'upgrader ^^
0