1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
|
<?php
//FICHIER D'EXPORTATION DES DONNEES VERS EXCEL
//INCLUSION DU FICHIER DE CONNEXTION BD
require("connect.php");
//TABLEAU CONTENANT LES CHAMPS DE LA REQUETE (CHAMPS A AFFICHER)
$champs = array("champ1","champs2" ...);
$taille = count($champs);
//REQUETE DE SELECTION DES DONNEES
$select = 'SELECT champ1, champ2 FROM TABLE';
//CONNECTION A LA BASE DE DONNEES
$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($result);
//INCLUSION DE LA CLASSE PHPWRITEEXCEL
require_once "Classes/class.writeexcel_workbook.inc.php";
require_once "Classes/class.writeexcel_worksheet.inc.php";
//CREATION DU FICHIER TEMPORAIRE EXCEL + INSTANCIATION D'UN NOUVEL OBJET DE LA CLASSE PHPWRITEEXCEL
$fname = tempnam("/tmp", "simple.xls");
$workbook = &new writeexcel_workbook($fname);
$worksheet = &$workbook->addworksheet();
//ECRITURE SUR LE FICHIER EXCEL GRACE A LA METHODE WRITE DE PHPWRITEEXCEL
//ECRITURE DE LA PREMIERE LIGNE (IDENTIFIANT DE CHAQUES CHAMPS)
for($j=0;$j<=($taille-1);$j++){
$worksheet->write(1,$j,$champs[$j]);
}
//ECRITURE DES DONNEES EN FONCTION DES CHAMPS OU COLONNES
$i=2;
while($row = mysql_fetch_array($result)) {
for($j=0;$j<=($taille-1);$j++){
$worksheet->write($i,$j,$row["$champs[$j]"]);
}
$i++;
}
//FERMETURE DU CLASSEUR TEMPORAIRE EXCEL
$workbook->close();
//INTEGRATION DU WORKBOOK EXCEL DANS LA PAGE WEB GRACE A LA FONCTION HEADER DE PHP
header("Content-Type: application/x-msexcel; name=\"example-simple.xls\"");
header("Content-Disposition: inline; filename=\"example-simple.xls\"");
//OUVERTURE DU FICHIER EXCEL
$fh=fopen($fname, "rb");
fpassthru($fh);
//DESTRUCTION DE CE FICHIER
unlink($fname);
?> |
Partager