Bonjour,
Je souhaite exporter mes données issues de ma base de données vers un document excel, comment faire ? Mon problème est de faire une boucle pour remplir mes cases.
Ci joint mes codes :
config.php qui contient ma connexion à la base et mes requêtes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 //On se connecte a la base de donnee mysql_connect('localhost', 'root', ''); mysql_select_db('tangram'); //On recupere le mot de passe de lutilisateur $req = mysql_query('select username,name,surname from tb_user '); $dn = mysql_fetch_array($req);
mon fichier ou je crée mon fichier excel :
ma création de tableau à part en php à partir de ma base de données :
Code : 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
23
24
25
26 <?php include('config.php'); set_time_limit(300); require_once 'Spreadsheet/Excel/Writer.php'; $workbook = new Spreadsheet_Excel_Writer(); $workbook->setTempDir('./tempdoc'); $workbook->send('base.xls'); $worksheet = $workbook->addWorksheet(); $worksheet->write(0,0,'Login'); $worksheet->write(0,1,'Name'); $worksheet->write(0,2,'Surname'); $worksheet->write(0,3,'Assessor'); $worksheet->write(0,4,'Date'); $worksheet->write(1,0,$dn['username']); $worksheet->write(1,1,$dn['name']); $worksheet->write(1,2,$dn['surname']); $workbook->close(); $workbook->sendFile(); ?>
J'avais un problème avec mon fichier de création de fichier excel, quand j'y faisais figurer mes requêtes, cela ne fonctionnait pas c’est pourquoi je les ai mis dans un fichier config.
Code : 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
23
24
25
26
27
28 <?php $sql = 'SELECT * FROM tb_user'; ini_set('mysql.trace_mode', true); mysql_connect('localhost', 'root', ''); mysql_select_db('tangram'); mysql_set_charset('utf8'); $result = mysql_query($sql); if(false !== $result) { if(mysql_num_rows($result) > 0) { echo '<table border="1">'; $row = mysql_fetch_assoc($result); echo '<tr><th>', implode('</th><th>', array_keys($row)), '</th></tr>'; do { echo '<tr><td>', implode('</td><td>', $row), '</td></tr>'; } while($row = mysql_fetch_row($result)); echo '</table>'; } mysql_free_result($result); }?>
Mais si je rajoute une autre case $worksheet->write(1,0,$dn['username']); il me réaffiche le meme utilisateur et non les autres dans ma base de données.
De plus comment faire pour "automatiser la lecture de ma base" et remplir automatiquement à l'aide de boucles qui contiendrait le nombre de valeurs extraites...
Partager