Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
861 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Forcer le download - Problème avec IE en remote

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] Forcer le download - Problème avec IE en remote

n°1703853
godbout
Génial.
Posté le 18-03-2008 à 04:04:14  profilanswer
 

Yo !
 
J'me bats depuis une journée avec un pauvre truc de daube et ça commence à me saouler grave :D
 
Je force le d/l d'un fichier excel. En local, tout fonctionne bien, FF ou IE.
Dès que je fous les fichiers sur le serveur, ça marche bien avec FF (comme d'hab quoi), mais IE me fait des misères (comme d'hab quoi) :sarcastic:
La popup s'ouvre, mais elle se ferme automatiquement. Et c'est pas un problème de popup-blocker, vu que le site est autorisé.
Si je mets un pauvre "echo 'blabla';" dans mon fichier php de d/l, la popup s'ouvre et affiche le texte, mais dès que je fous des headers, elle se ferme automatiquement sans m'ouvrir la dialog box de d/l :/
Par contre, si j'tape directement l'adresse du fichier php de d/l, la dialog box s'ouvre et j'peux télécharger correctement mon fichier.
 
Bref, j'y capte rien :??:
D'où vient ce problème de fermeture automatique de popup par IE7 ?  
 
Si ça peut aider, le code du dl.php :
 

Code :
  1. <?php
  2. $filename = '../appFiles/'. $_GET['filename'];
  3. if ( substr(strrchr($filename, '.'), 1) == 'xls' )
  4. {
  5.  header("Pragma: public" );
  6.  header("Expires: 0" );
  7.  header("Cache-Control: must-revalidate, post-check=0, pre-check=0" );
  8.  header("Cache-Control: private",false);
  9.  header("Content-Type: application/vnd.ms-excel" );
  10.  header("Content-Disposition: attachment; filename=\"".basename($filename)."\";" );
  11.  header("Content-Transfer-Encoding: binary" );
  12.  header("Content-Length: ".@filesize($filename));
  13.  set_time_limit(0);
  14.  @readfile("$filename" ) or die("File not found." );
  15. }
  16. ?>


 
Merci !

mood
Publicité
Posté le 18-03-2008 à 04:04:14  profilanswer
 

n°1703856
godbout
Génial.
Posté le 18-03-2008 à 06:02:18  profilanswer
 

Pour info, le serveur est Apache sur les deux machines. En local ça tourne sous Windows, le serveur sous linux (CentOS).

 

J'ai déjà perdu assez de temps avec cette merde d'IE, donc j'ai viré le code javascript qui m'ouvre ma dl.php page avec les bons paramètres, et à la place je fais un lien direct vers le fichier. Et oh miracle, ça marche. Mais n'empêche que c'est toujours frustrant de se battre contre un putain de browser de merde qui fait chier à plein temps.

 

Mais bon, au final, je sais toujours pas d'où vient le problème. Si quelqu'un a une idée, j'suis grave preneur !

 


Message édité par godbout le 18-03-2008 à 13:18:56
n°1704026
godbout
Génial.
Posté le 18-03-2008 à 13:19:04  profilanswer
 

little up!

n°1704279
grosbin
OR die;
Posté le 18-03-2008 à 21:48:37  profilanswer
 

salut perso j'utilise
header("Content-disposition:attachment;filename=RecapClients18032008.xls" );
header("Content-Type:application/force-download" );
 
jamais personne ne s'en est plaint :D


---------------
Photos Panoramiques Montagnes Haute Savoie
n°1704337
godbout
Génial.
Posté le 19-03-2008 à 07:02:18  profilanswer
 

Je crois que j'ai déjà essayé, mais j'ai essayé tellement de trucs que j'suis plus sûr de rien :D
 
Donc j'vais retenter, et j'tiens au courant [:ocube]

n°1704354
godbout
Génial.
Posté le 19-03-2008 à 08:31:56  profilanswer
 

Marche pas :/
 
Même problème, marche impeccable sous FF, en local ou sur le serveur, mais ça foire avec IE sur le serveur (mais ça marche en local).
La popup s'ouvre et se ferme sans me balancer la Save dialog :/
 
Quel problème de merde :D
 
Pas d'autre idée ?
Un problème du coté du serveur peut-être ?

n°1704525
godbout
Génial.
Posté le 19-03-2008 à 12:08:19  profilanswer
 

Bon, en changeant le code pour que la fenetre ne s'ouvre pas automatiquement mais avec un click, ça marche. Donc c'est cette merde d'IE qui me bloque la popup alors que le popup-blocker est désactivé. Bravo [:dawao]

n°1704554
grosbin
OR die;
Posté le 19-03-2008 à 12:52:57  profilanswer
 

Lol t'aurais dû essayer une formule try,catch pour la popup
ou ouvrir lien dans nouvelle fenêtre puis window.close :D
 
"Je crois que j'ai déjà essayé, mais j'ai essayé tellement de trucs que j'suis plus sûr de rien", la méthode vient avec le temps :)


---------------
Photos Panoramiques Montagnes Haute Savoie
n°1704560
godbout
Génial.
Posté le 19-03-2008 à 13:02:13  profilanswer
 

Ouais, la méthode vient avec le temps, c'est sûr, mais quand c'est pas un problème de conception, mais un problème de browser de merde, c'est toujours rageant :D


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Forcer le download - Problème avec IE en remote

 

Sujets relatifs
fonction matcher connue en PHP mais pas en JAVA[resolu]problème alignement...
Problème de JMenuBarErreur Php & jpgraph
Problème avec MeriseProbleme de Link...
[Résolu] Problème de syntaxe?Probleme de toupie ...
[Resolu]Probleme quote dans inputproblème d'alignement vertical
Plus de sujets relatifs à : [PHP] Forcer le download - Problème avec IE en remote


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR