[SQL] Exportation CSV dans un fichier
Fermé
torer40
Messages postés
56
Date d'inscription
mercredi 26 juin 2013
Statut
Membre
Dernière intervention
15 mai 2023
-
31 janv. 2014 à 17:15
ThEBiShOp Messages postés 8411 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 - 5 févr. 2014 à 16:51
ThEBiShOp Messages postés 8411 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 - 5 févr. 2014 à 16:51
Bonjour,
Je recherche la requête permettant de faire une exportation CSV d'une table, directement dans un fichier (donc un fichier format .csv ) ce qui permettra de l'ouvrir ensuite directement depuis un tableur.
Merci d'avance.
Je recherche la requête permettant de faire une exportation CSV d'une table, directement dans un fichier (donc un fichier format .csv ) ce qui permettra de l'ouvrir ensuite directement depuis un tableur.
Merci d'avance.
A voir également:
- [SQL] Exportation CSV dans un fichier
- Fichier bin - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier rar - Guide
- Fichier .dat - Guide
4 réponses
torer40
Messages postés
56
Date d'inscription
mercredi 26 juin 2013
Statut
Membre
Dernière intervention
15 mai 2023
8
5 févr. 2014 à 15:46
5 févr. 2014 à 15:46
J'ai trouvé le moyen en php de créer un fichier et d'y écrire quelque chose :
Mais je n'ai toujours pas trouvé comment réaliser une exportation dans ce même fichier, la base de donné en csv ..
$filename = "test.txt"; print "Ecrire dans $filename<br>"; $fp = fopen ($filename, "w") or die ("Impossible d'ouvrir $filename"); fwrite ($fp, "Hello\n"); fclose($fp); print "réaliser un ajout dans $filename<br>"; $fp = fopen ($filename, "a") or die ("Impossible d'ouvrir $filename"); fputs ($fp, "Une autre chaine\n"); fclose($fp) ;
Mais je n'ai toujours pas trouvé comment réaliser une exportation dans ce même fichier, la base de donné en csv ..
torer40
Messages postés
56
Date d'inscription
mercredi 26 juin 2013
Statut
Membre
Dernière intervention
15 mai 2023
8
5 févr. 2014 à 16:18
5 févr. 2014 à 16:18
Je peux le faire avec phpmyadmin depuis l'onglet exporter, mais je veux le coder en php
ThEBiShOp
Messages postés
8411
Date d'inscription
jeudi 22 mars 2007
Statut
Contributeur
Dernière intervention
8 février 2021
1 566
5 févr. 2014 à 16:23
5 févr. 2014 à 16:23
D'accord, il doit exister des scripts d'export CSV.
Personnellement, la dernière fois que j'ai codé un export CSV, je l'ai fait à la main, en créant mes lignes en ajoutant les champs les uns après les autres en les séparant comme il se doit.
Personnellement, la dernière fois que j'ai codé un export CSV, je l'ai fait à la main, en créant mes lignes en ajoutant les champs les uns après les autres en les séparant comme il se doit.
torer40
Messages postés
56
Date d'inscription
mercredi 26 juin 2013
Statut
Membre
Dernière intervention
15 mai 2023
8
Modifié par torer40 le 5/02/2014 à 16:50
Modifié par torer40 le 5/02/2014 à 16:50
Je viens de trouver un script en cherchant sur google, je viens de le tester, ça marche niquel. Mais j'ai besoin de comprendre le code car il va falloir que je l'explique à un jury d'ici peu. Et étant débutant en codage, ce script que j'ai trouvé c'est du chinois pour moi.
Pouvez-vous m'aider à expliquer ce code ?
Pouvez-vous m'aider à expliquer ce code ?
/* vars for export */ // database record to be exported $db_record = 'XXXX'; // optional where query $where = ''; // filename for export $csv_filename = 'db_export_'.$db_record.'_'.date('Y-m-d').'.csv'; // database variables $hostname = "XXXXX"; $user = "XXXXX"; $[/contents/64-mots-de-passe password] = "XXXXX"; $database = "XXXXX"; // Database connecten voor alle services mysql_connect($hostname, $user, $password) or die('Could not connect: ' . mysql_error()); mysql_select_db($database) or die ('Could not select database ' . mysql_error()); // create empty variable to be filled with export data $csv_export = ''; // query to get data from database $query = mysql_query("SELECT * FROM ".$db_record." ".$where); $field = mysql_num_fields($query); // create line with field names for($i = 0; $i < $field; $i++) { $csv_export.= mysql_field_name($query,$i).';'; } // newline (seems to work both on Linux & Windows servers) $csv_export.= ' '; // loop through database query and fill export variable while($row = mysql_fetch_array($query)) { // create line with field values for($i = 0; $i < $field; $i++) { $csv_export.= '"'.$row[mysql_field_name($query,$i)].'";'; } $csv_export.= ' '; } // Export the data and prompt a csv file for download header("Content-type: text/x-csv"); header("Content-Disposition: attachment; filename=".$csv_filename.""); echo($csv_export);
ThEBiShOp
Messages postés
8411
Date d'inscription
jeudi 22 mars 2007
Statut
Contributeur
Dernière intervention
8 février 2021
1 566
5 févr. 2014 à 16:51
5 févr. 2014 à 16:51
Si c'est pour un projet à présenter, je te conseille vivement de concevoir toi même ton script... au moins tu sauras l'expliquer, en plus d'être risqué de prendre un script que tu n'as pas fait pour le présenté, c'est loin d'être apprécié par un jury...
Ce n'est pas très compliqué à faire, prends le temps et fais le toi même, c'est mon conseil...
Ce n'est pas très compliqué à faire, prends le temps et fais le toi même, c'est mon conseil...
Modifié par ThEBiShOp le 5/02/2014 à 15:49