|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre confirmé
![]() Vincent Développeur informatique Inscription : janvier 2009 Messages : 246 ![]() |
Bonjour à toutes et à tous,
Lorsque je ressort un fichier xls par la sortie "php://output" celui arrive coronpu : message : Impossible d'ouvrir le Fichier "fichier.xlsx" car son format ou son extension n'est pas valide. Vérifier que le fichier n'est pas endommagé et son extension correspond bien au format du fichier. Je ne pense pas que ça soit un problème phpExcel puisque lorsque j'enregistre ce même fichier sur le serveur celui-ci est correct. D'où ma question: comment fonction cette sortie ? peut on régler certains paramètres liés à celle-ci ? ... Merci d'avance |
|
|
00
|
|
|
#2 |
|
Membre chevronné
![]() Inscription : juin 2004 Messages : 747 ![]() |
N'est-ce pas un problème de format Excel ?
xlsx est le format XML d'Office sans doute incompatible avec phpExcel... Essaye avec un fichier xls.
__________________
|
|
00
|
|
|
#3 |
|
Membre confirmé
![]() Vincent Développeur informatique Inscription : janvier 2009 Messages : 246 ![]() |
Désolé, j'aurais dut le préciser mais j'ai aussi essayé en xls (Excel 5) et le fichier est rempli de hiéroglyphes lorsque que je le sort par output. Alors qu'il est correct en l'enregistrant sur le serveur.
|
|
|
00
|
|
|
#4 |
|
Membre chevronné
![]() Inscription : juin 2004 Messages : 747 ![]() |
Il faut peut-être préciser un header avant la sortie du fichier ?
__________________
|
|
00
|
|
|
#5 | ||
|
Membre confirmé
![]() Vincent Développeur informatique Inscription : janvier 2009 Messages : 246 ![]() |
Oui, c'est ce que je fais. Voici le code :
Code :
|
||
|
|
00
|
|
|
#6 |
|
Membre chevronné
![]() Inscription : juin 2004 Messages : 747 ![]() |
Je n'ai jamais fait ça donc je suis ptêt à côté de la plaque..
![]() Mais un truc m'intrigue : la ligne sauve ce qui est en sortie, ou est-ce que ça écrit en sortie ? Si ça ne fait que sauver, je pense mettre les header AVANT d'écrire sur la sortie...
__________________
|
|
00
|
|
|
#7 |
|
Membre confirmé
![]() Vincent Développeur informatique Inscription : janvier 2009 Messages : 246 ![]() |
C'est la commande phpExcel pour afficher directement à partir du navigateur.
Apparemment ça envoi le fichier préparé à une sortie standard php. Mais le fichier arrive corrompu. Je met effectivement les header avant la sortie. |
|
|
00
|
|
|
#8 | |
![]() ![]() Gérard ErnaelstenDBA & Dev PHP Inscription : juin 2005 Messages : 3 174 ![]() |
Avez-vous tenu compte des recommandations des développeurs ?
Citation:
__________________
Il faut toujours viser la lune, car même en cas d'échec on arrive dans les étoiles. O.Wilde Mes Articles/Critiques : Merise - Guide pratique PHPExcel PostgreSQL : Administration et exploitation d'une base de données PostgreSQL : Entraînez-vous à créer et programmer une base de données relationnelle |
|
|
|
00
|
|
|
#9 |
|
Membre confirmé
![]() Vincent Développeur informatique Inscription : janvier 2009 Messages : 246 ![]() |
Salut Maitre,
Oui j'ai regarder la doc dév et j'ai appliqué les recommandations : -ne pas mettre d'autres sorties (echo, print_r...) -ne pas fermer la balise php pour éviter les problèmes -mettre le format de fichier en without bom (j'ai mis en UTF without BOM) J'ai essayé avec ou sans balise php fermante, même résultat. Je vais essayé de recomposer le fichier petit à petit pour essayer de voir où ça bloque. Si vous avez des idées n'hésitez pas. |
|
|
00
|
|
|
#10 |
|
Membre confirmé
![]() Vincent Développeur informatique Inscription : janvier 2009 Messages : 246 ![]() |
Ok j'ai trouvé d'où venait le problème. Je faisais un : pour initialiser ma connexion. Et en fait c'est le require faisait planter.
Il suffit de mettre l'initialisation de la connexion directement dans le script de l'export sans l'inclure par require, j'ai pas essayé avec include() mais je suppose que ça doit être pareil. En tout cas merci à tous.
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com