Précédent   Forum des professionnels en informatique > PHP > Langage > Syntaxe
Syntaxe Forum d'entraide sur la syntaxe de PHP et la POO. Avant de poster -> FAQ syntaxe, Cours d'initiation et cours de POO
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 15/06/2011, 16h40   #1
Membre extrêmement actif
 
Avatar de lodan
 
Inscription : juin 2006
Messages : 1 804
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 1 804
Points : 587
Points : 587
Par défaut Ouverture CSV dans Firefox

Bonjour,

Dans un script php je crée un fichier.csv que je stocke dans un répertoire de mon serveur.

Les entêtes de mon fichier sont :

Code :
1
2
3
header("Content-Type: application/csv-tab-delimited-table; charset=utf-8\n");
header("Content-Type: Content-Type: application/force-download\n");
header("Content-disposition: filename=".$file);
Lorsque j'ouvre le fichier depuis le répertoire tout va bien.

Lorsque je l'ouvre depuis le navigateur avec un lien, il me l'ouvre comme un fichier txt au lieu de me proposer le téléchargement.

Je suis sous firefox.

J'ai regardé s'il y avait une erreur sur les entêtes, mais je n'en ai pas vu.

Une idée ?

Merci d'avance
__________________
Y a pas, plus on fait, plus on sait. Plus on cherche, plus on sait chercher. Maintenant quant à trouver, c'est autre chose.
lodan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/06/2011, 17h03   #2
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 466
Points : 8 466
pas d'erreurs ?

les entêtes doivent être séparées pas des CRLF donc \r\n et pas juste \n

Code :
header("Content-Type: Content-Type: application/force-download\n");
y'a 2 fois Content-Type

pourquoi mettre 2 (enfin 3 ici ) Content-Type ?
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2011, 14h55   #3
Membre extrêmement actif
 
Avatar de lodan
 
Inscription : juin 2006
Messages : 1 804
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 1 804
Points : 587
Points : 587
Oups j'avais déjà des coquilles résiduels de tous mes tests.

Bon après nettoyage j'ai ceci

Code :
1
2
 header("Content-Type: application/csv-tab-delimited-table/force-download; charset=utf-8\r\n");
header("Content-disposition: filename=".$file);
Mais c'est pas mieux.

L'ouverture de mon document dans le navigateur se fait via :

Code :
<a href="http://monurl.fr/fichier.csv>dossier</a>
J'ai trouvé ça sur un forum

Code :
1
2
3
4
5
Header('Pragma' , 'public', true);
    Header('Cache-Control', 'max-age=0', true);
    Header('Content-Type', 'application/javascript; charset=iso-8859-1;', true);
    Header('Content-Transfer-Encoding', 'binary', true);
    Header('Content-disposition', 'attachment; filename="'.$file, true);
Mais c'est pas mieux non plus.
__________________
Y a pas, plus on fait, plus on sait. Plus on cherche, plus on sait chercher. Maintenant quant à trouver, c'est autre chose.
lodan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2011, 15h03   #4
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 466
Points : 8 466
ton entête n'est toujours pas bonne : application/csv-tab-delimited-table/force-download ne correspond a rien

c'est application/force-download
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2011, 15h37   #5
Membre extrêmement actif
 
Avatar de lodan
 
Inscription : juin 2006
Messages : 1 804
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 1 804
Points : 587
Points : 587
Code :
1
2
header("Content-Type: application/force-download; charset=utf-8\r\n");
header("Content-disposition: filename=".$file);
Bon ben rien de nouveau. Je n'y comprend rien.
__________________
Y a pas, plus on fait, plus on sait. Plus on cherche, plus on sait chercher. Maintenant quant à trouver, c'est autre chose.
lodan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2011, 16h31   #6
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 466
Points : 8 466
met le attachment dans le content-dispo, pas besoin du charset avec le forece-download, pas besion non plus de faire des sauts de lignes
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h18.


 
 
 
 
Partenaires

Hébergement Web