Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > Bureautique
Bureautique Forum d'entraide sur la gestion dynamique de documents de bureautique (Word, Excel, OpenOffice...) avec PHP. Avant de poster -> Cours Excel, FAQ OpenXML, FAQ OpenDocument
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 28/05/2006, 14h57   #1
Nouveau Membre du Club
 
Inscription : juin 2005
Messages : 148
Détails du profil
Informations forums :
Inscription : juin 2005
Messages : 148
Points : 26
Points : 26
Par défaut Pb avec un script PHP-Excel

Salut tout le monde,


etant a court de temps pour finir un projet je cherchais un script pour exporter ma base de données ds un fichier excel...J'ai trouvé celui-ci sur internet je ne sais pas trop si il est efficace ou non j'ai essayer de le tester mais j'ai des erruer concernant les headers Code :
[LEFT] <?php

include('database.php');
$result = mysql_query('select * from excel_test', $linkID);
$count = mysql_num_fields($result);

for (
$i = 0; $i < $count; $i++){
$header .= mysql_field_name($result, $i)."\t";
}

while(
$row = mysql_fetch_row($result)){
$line = '';
foreach(
$row as $value){
if(!isset(
$value) || $value == ""){
$value = "\t";
}else{
# important to escape any quotes to preserve them in the data.
$value = str_replace('"', '""', $value);
# needed to encapsulate data in quotes because some data might be multi line.
# the good news is that numbers remain numbers in Excel even though quoted.
$value = '"' . $value . '"' . "\t";
}
$line .= $value;
}
$data .= trim($line)."\n";
}
# this line is needed because returns embedded in the data have "\r"
# and this looks like a "box character" in Excel
$data = str_replace("\r", "", $data);


# Nice to let someone know that the search came up empty.
# Otherwise only the column name headers will be output to Excel.
if ($data == "") {
$data = "\nno matching records found\n";
}

# This line will stream the file to the user rather than spray it across the screen
header("Content-type: application/octet-stream");

# replace excelfile.xls with whatever you want the filename to default to
header("Content-Disposition: attachment; filename=excelfile.xls");
header("Pragma: no-cache");
header("Expires: 0");

echo
$header."\n".$data;
?>
[/LEFT]


Si vous avez des propositions de scripts ca serait cool...merci..
sagitarium est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/05/2006, 15h17   #2
Membre expérimenté
 
Développeur Web
Inscription : avril 2006
Messages : 430
Détails du profil
Informations personnelles :
Localisation : Belgique

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : avril 2006
Messages : 430
Points : 538
Points : 538
salut,

Ca serait étonnant qu'on puisse exporter en excel avec un script aussi 'simple'.
Je te conseille d'utiliser cette lib pear: Spreadsheet_Excel_Writer, qui marche vraiment très très bien.
bkill est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/05/2006, 16h48   #3
Nouveau Membre du Club
 
Inscription : juin 2005
Messages : 148
Détails du profil
Informations forums :
Inscription : juin 2005
Messages : 148
Points : 26
Points : 26
Tu penses que c'est simple d'utilisation..
En fait je dois publier sur un serveur de mon ecole..il faut qu'il rajoute la librarire pear aussi non..?
sagitarium est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/05/2006, 17h03   #4
Nouveau Membre du Club
 
Inscription : juin 2005
Messages : 148
Détails du profil
Informations forums :
Inscription : juin 2005
Messages : 148
Points : 26
Points : 26
J'aimerai surtout savoir comment utiliser le format
Spreadsheet_Excel_Writer


avec une base de données MySQL...est ce que je dois renvoyer la requete vers un fichier texte puis faire une conversion..
sagitarium 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 21h38.


 
 
 
 
Partenaires

Hébergement Web