Export de table mysql vers excel

Fermé
DJmomoclio Messages postés 7 Date d'inscription lundi 28 juin 2004 Statut Membre Dernière intervention 8 juillet 2004 - 6 juil. 2004 à 11:03
 Boursicot - 12 févr. 2012 à 18:23
Bonjour a tous,
alors en fait je veux faire un export de mes tables faites avec php myadmin (inclus dans Easyphp 1.7) vers un fichier de type excel.
Si quelqu'un connait la methode pour le faire, ou bien possede un code pour cela qu'il me le dise .
Merci d'avance.
Tchao MOMO
A voir également:

11 réponses

Bonjour,

J'utilise pour cette fonction un script que j'ai téléchargé sur PHPscript (j'ai laissé les champs de ma base de données , je n'ai pas le courage de nettoyer le script) :

<?
/////////////////////////////////////////////////
// Emans Rémi
// Informaticien CNRS
// emans@obs-banyuls.fr
// sauvetable permet de sauvegarder une table au format excel.
//
////////////////////////////////////////////////
include("sql.inc");
$db = mysql_connect($hote, $user, $password); // connexion à la base
mysql_select_db("bdd",$db); // sélection de la base
$req = mysql_query("SELECT * FROM table"); // on sélectionne les enregistrements
$res = mysql_numrows($req); // on compte le nombre de résultats

$file = ("bdd_fichier.xls"); // le fichier doit déjà exister
if(!$myfile = fopen($file, "w")) //on ouvre le fichier
{
print("erreur: ");
print("'$filename' n'existe pas!\n");
exit;
}

WHILE($res!=$i) // 5. chaque fois que "$res" est dif. de "$i", donc qu'il y a un enreg.

{
$numero = mysql_result($req,$i,"***"); // on récupère les champs




//ecriture
fputs($myfile,"$numero\t $fiche\t $clef\t $object\t $cp\t $debut\t $fin\t $secteur\t $stade\t $comment\t $rec\t $ech\t $vpcp\t $vppcs1\t $vppcs2\t $vppcs3\t $vppcsd\t $vpas1\t $vpas2\t $vpas3\t $vpasd\t $vrcp\t $vrpcelsm\t $vrpcs1\t $vrpcs1\t $vrpcs2\t $vrpcs3\t $vrpcsd\t $vraelsm\t $vras1\t $vras2\t $vras3\t $vrasd\n"); //on insère une tabulation \t pour changer de colonne et un retour chariot \n pour changer de ligne


$i++; // 8. on ajoute un au compteur et on retourne à WHILE
}

//fermeture fichier
fclose($myfile); //on ferme le fichier
echo "<center><h2>La table a été sauvegardée...</h2></center>";

mysql_close(); // 9. on ferme la connexion
?>
<form name="form0">
<center><br><br><input type="button" value="Fermer" onClick="self.close()" name="button3"></center>
</form>

Bon courage
7
Salut
Même 4 ans après ce code est très utile.
Toutefois pourrais-ton m'expliquer s'il vous plait, ou on trouve le sql.inc ?

Les variables :
//ecriture
fputs($myfile,"$numero\t $fiche\t $clef\t $object\t $cp\t $debut\t $fin\t $secteur\t $stade\t $comment\t $rec\t $ech\t $vpcp\t $vppcs1\t $vppcs2\t $vppcs3\t $vppcsd\t $vpas1\t $vpas2\t $vpas3\t $vpasd\t $vrcp\t $vrpcelsm\t $vrpcs1\t $vrpcs1\t $vrpcs2\t $vrpcs3\t $vrpcsd\t $vraelsm\t $vras1\t $vras2\t $vras3\t $vrasd\n"); //on insère une tabulation \t pour changer de colonne et un retour chariot \n pour changer de ligne


sont affectées ou ? Elles contiennent quoi ?
Je m'interroge.... Cela ne m'explique pas comment je dois créer la structure du fichier excel.

Merci bcp
0
aynsoufiane > Helrick
13 mai 2008 à 18:27
<?php

header("Content-type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=nom_fichier.xls");


// selectionner la base de données

mysql_select_db($database_conn, $conn);
$sql = "SELECT * FROM client";
$sql = mysql_db_query($database_conn,$sql);

$tbl= " <table border='0' cellpadding='0' cellspacing='0'>
<tr bgcolor='#CCCCCC' height='40px'>
<td>nom</td>
<td>prenom</td>
<td>email</td>
</tr>";
while ($data = mysql_fetch_array($sql))
{
$tbl = $tbl . "<tr>";
$tbl = $tbl . "<td>" . $data[nom'] . "</td>";
$tbl = $tbl . "<td>" . $data['prenom'] . "</td>";
$tbl = $tbl . "<td>" . $data['email'] . "</td>";
$tbl = $tbl . "</tr>";
}
$tbl = $tbl . "</table>";

print $tbl ;
?>
0
steeve59510 Messages postés 13 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 5 mars 2010 > aynsoufiane
29 juil. 2008 à 09:48
MERCI bcp !!!
Exactement ce qu'il me manquait !

Steeve59510
0
Bonjour
J'ai déjà testé les méthodes ou les bouts de codes qui sont délivrés ici. Ils ne fonctionnent pas. du mois sur les machines de mon hébergeur mutualisé. J'ai pas^pu essayer ailleurs.
0
Bonjour,
merciiiiiiiiiiiiiii
2
Bonjour
Dans ma version de phpmyadmin 2.5.2, il ya dans "Exporter" l'option "Données CSV pour Ms Excel". C'est peut-être ça ?
1
Utilisateur anonyme
8 juil. 2004 à 10:34
Salut,
Tu peux le coder toi meme au format csv. Il te suffit de faire un select * de la table qu'il te faut et de copier le résultat dans un fichier texte avec les données séparées par des ; que tu nommeras ton_fichier.csv. Excell l'ouvrira sans probleme.

Kalamit,
Vol au dessus d'un nid de Pika-baffe. :)
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
il y a cette fonction qui genere des fichier CSV en ligne dynamiquement

il suffit de mette un header CSV au debut de ta page puis d'ecrire les resultat de ta requete separe par des ; le flux http sera dirigé non pas vers une page mais vers un fichier un lien vers cette page de telecharger le fichier table.csv


<?
header("Content-Type: application/csv-tab-delimited-table");
header("Content-disposition: filename=table.csv");
mysql = "select n1,n2 from blabla";
$q = mysql_query($sql);
$donne = mysql_fetch_row($q);
do
{
echo $donne[0].";".$donne[1].";\n"
}
while ($donne = mysql_fetch_row($q));

?>

sinon il y a possibilité de travailler sur des vrai fichiers XLS je te donne le lien (j'ai pas eu le temps de tester encore )

http://stephaneey.developpez.com/phpexcel/
1
DJmomoclio Messages postés 7 Date d'inscription lundi 28 juin 2004 Statut Membre Dernière intervention 8 juillet 2004
8 juil. 2004 à 10:27
Salut Ric, je te remrcie pour ta réponse mais en fait c'est dans un site intranet que j'ai ce probleme, je dois par un lien ou un bouton faire passer une table sql vers excel et ca je ne sais pas comment faire ?
Enfin merci quand meme !!!
0
DJmomoclio Messages postés 7 Date d'inscription lundi 28 juin 2004 Statut Membre Dernière intervention 8 juillet 2004
8 juil. 2004 à 14:14
Je vous remrcie pour toutes ces réponses je vais essayer ca et je vous dis apres !!
Encore merci
Tchao MOMO
0
Manyanya Messages postés 44 Date d'inscription vendredi 9 février 2007 Statut Membre Dernière intervention 15 février 2012
25 juil. 2008 à 11:26
Bonjour,

Je suis novice en BD et je ne connais pas PHP. Je souhaiterais avoir un petit logiciel qui convertit des tables Mysql en fichier excel et vice-versa. Ceci me permettra de terminer le projet sur lequel je suis entrain de travailler.

Votre contribution m'aidera beaucoup.
0
essaye avec ce lien

francias.softpicks.net/software/Excel-MySQL-Conversion-software_fr-27283.htm

bonne chance
0
bonjour, je debute et je rencontre des soucis, j'ai un site sur lequel, j'ai fait une interface. J'ai un bouton qui me sert a afficher les resultats de requetes. je voudrais faire en sorte d'avoir le même bouton, sauf que au lieu que ca s'affiche dans une page, je voudrais que ca me telecharge le resultat en csv ou format excel.

A savoir que mon bouton actuel me génère une pages avec un tableau.

voici mon code :

...
...
case 'affpan':
$titre = $_POST[titre];
$ids = $_POST[ids];
$ids = explode (";", $ids );
$sql="SELECT * FROM publipostage where ID = '$ids[0]'";
for($i=1;$i < count($ids);$i++)
{
$sql.=" OR ID = '$ids[$i]' ";
}
echo "affichage des pannelistes de l'enquête : $titre
";
include "src/aff.php";
break;

...
...

<li class="form-line" id="id_2">
<div id="cid_2" class="form-input-wide">
<div style="margin-left:156px" class="form-buttons-wrapper">
<button id="input_2" type="submit" class="form-submit-button" name="envoi" value="affpan">
afficher les pannelistes
</button>
</div>
</div>
</li>

...
...
0
Utilise phpexcel,

c'est le mieux que j'ai trouvé, tu peux presque tout faire !
Tu peux générer des feuilles Excel a partir d'une base, controler les formats, mettre des formules ... , tu peux même lire une feuille excel et la rebasculer dans ta base, ça demande un peu de mise au point mais ça vaut vraiment la peine.
0
c'est de la daube ce code
-1