3eme essai : Créer un fichier excel avec des données d'un tableau

Signaler
Messages postés
25
Date d'inscription
jeudi 13 mars 2003
Statut
Membre
Dernière intervention
23 avril 2008
-
Messages postés
365
Date d'inscription
samedi 26 juin 2004
Statut
Membre
Dernière intervention
17 avril 2008
-
YarbY

3 réponses

Messages postés
25
Date d'inscription
jeudi 13 mars 2003
Statut
Membre
Dernière intervention
23 avril 2008

Bonjour
désolé pour le(s) (3) message(s) précédent(s) où mon texte est parti je ne sais où ...

J'ai créé un tableau avec des données extraitent d'une base de données mySql.
Je voudrais créer un fichier excel contenant ces données.

J'ai vu qu'on pouvait y parvenir en rajoutant un code du genre :
header("Content-Type: application/vnd.ms-excel" );
ou
header("Content-Type: text/x-csv" );
header('Content-Disposition: attachement; filename="list.csv"' );

Mais ça me donne un message : Cannot modify header information - headers already sent by ....
D'où vient le problème svp
merci d'avance
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
42
Salut

le header de ta requette a deja ete envoye, lis la doc de header sur php.net, tu comprendras mieux...

<hr />une recherche sur exalead vous aurait peut-etre evite de poser cette question

In a dream, I saw me, drop dead...
U were there, U cried...
It was just a dream,
if I die, U won't cry, maybe, U'll be happy
Messages postés
365
Date d'inscription
samedi 26 juin 2004
Statut
Membre
Dernière intervention
17 avril 2008

Bonjour,
tu peux utiliser une ob_start(); en debut de code et un ob_end_flush(); pour bufferiser ta page générée. Ainsi tu peux modifier les entetes comme tu veux a tout moment vu que tu n'envoie le contenu de ton buffer qu'a la fin du script.
Ou sinon tu peux aussi bien regarder si t'as pas envoyé un header avant (si tu preferes ne pas bufferiser). Typiquement t'as mis un <html><head> ou un <doctype avant l'apparition du header.

_Marikou