Bonjour à tous,
j'ai le code suivant qui doit me permettre d'exporter un tableau vers Excel :
Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
ob_clean();
$requete="select * from table;
$resultat=mysql_query($requete) or die ('ERREUR'.mysql_error());
header("Content-type:application/vnd.ms-excel");
header("Content-disposition:attachment; filename=fichier.xls");	

$excel=" ";
$excel .="colonne1 \t colonne2 \t ... \n";

while ($ligne=mysql_fetch_assoc($resultat))
{
$v1=MySQL_real_escape_string($ligne['col1']);
$v2=MySQL_real_escape_string($ligne['col2']);
...

$excel .="$v1 \t $v2 \t ... \n";
}

print$excel;
exit;	
?>
Ce script fonctionne mais les accents ne s'affichent pas correctement.
J'ai donc essayé de rajouter au début (après le ob_clean()):
Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
echo"<HTML><HEAD><META http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"></HEAD><BODY>";

et à la fin :
Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
echo"</BODY></HTML>";

mais lorsque j'ouvre le fichier, j'ai un message d'erreur 'contenu de la cellule trop volumineux'. Il semble que l'ensemble de mon tableau soit dans une seule et même cellule.
J'ai également essayé d'ajouter
Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
content-type: text/html; charset=utf-8
dans mon header, mais les accents ne s'affichent toujours pas