Index du Forum » » Le coin des codeurs

Auteur

Word et MYSQL
Anonyme
19853  

  Posté : 12-03-2003 23:08

Merci pour les liens !!

Mais j'ai trouvé mieux !!

J'ai réussi à faire un script en php qui ouvre un fichier word contenant les valeurs choisies dans la requête SQL de ton choix !!

Le code est très simple et ca marche aussi pour Excel !!

Le voici : (désolé pour la longueur)

<?
/*
/**********************************************/
/************ Scripted by oVa13 ******************/
/**********************************************/
< BR>Ce script sert à générer un fichier WORD ou EXCEL à partir de requetes faîtes sur Mysql.
Par défault, le script créé un fichier WORD.
Pour créer un fichier EXCEL il faut changer "msword" en "msexcel"
et "doc" en "xls" dans les variables $type_fichier et $extension juste en dessous !!
*/

//----on définit le type de fichier
$type_fichier = "msword";
//----on définit l'extension
$extension = "doc";

//---- headers
//----type fichier
header("!content-type:! application/$type_fichier");

//----type extension (doc ou xls)
header("!content-disposition:! .doc; filename=liste_personnel.$extension");


//----date + titre
$now_date = date('d-m-Y H:i');
$titre = "Liste du personnel éditée le $now_date";

//---- libéllé requete SQL
$requete = "Select * from tabletest";

//---- récup des variables de connection
!include!("../config.inc");

//---- connection à la base
mysql_connect($serveur,$login,$pass) or die("Impossible de se connecter à la base de données");
mysql_select_db("$base") or die("Impossible de se connecter à la base de données");

//---- exécution requete SQL
$result = @mysql_query($requete) or die(mysql_error());

//---- separateur
$sep = "\n";

//---- affichage titre
echo("$titre\n\n\n");

/************************************* ****************/
/* Edition des colonnes (pour EXCEL)
for ($i = 0; $i < mysql_num_fields($result); $i++) {
echo mysql_field_name($result,$i) . "\t";
}
print("\n");
*/
/************************************** ***************/

//---boucle d'enregistrement des données dans la variable $texte
$i = 0;
while($row = mysql_fetch_row($result))
{
$texte = "";
for($j=0; $j {
//----noms des champs
//************ ATTENTION : il faut mettre la ligne ci-dessous en commentaires si vous voulez créer un fichier EXCEL ***********
$texte .= mysql_field_name($result,$j) . " : ";

//----contenu
if(!isset($row[$j]))
$texte .= "NULL".$sep;
elseif ($row[$j] != "")
$texte .= "$row[$j]".$sep;
else
$texte .= "".$sep;
}

//----on enlève le "$"
$texte = str_replace($sep."$", "", $texte);
$texte .= "\t";
print(trim($texte));
print "\n\n";
$i++;
}

//----validation que le fichier a bien été rempli
return (true);

?>



Cet article provient de NPDS

http://www.npds.org/viewtopic.php?topic=2666&forum=5