Publié le 02/06/2010
Auteur fobec
Réseaux sociaux
0 partages
0 tweets
0 plus
0 commentaires

Exporter une table MySQL au format CSV

Comment exporter une sélection de donnée vers un fichier texte. Pour sauvegarder une table, exporter vers une autre base de données ou extraire les informations, le format CSV est le plus souvent utilisé.

Enregistrer un SELECT vers un fichier CSV

Pour exporter le contenu d'une table MySql vers un fichier, le plus souvent, on utilise l'outil d'export de PHPMyAdmin. A partir d'un script PHP voyons comment écrire un fichier CSV d'une sélection de donnée que l'on envoie directement dans le navigateur internet.

<?php
//Variable - à remplacer par vos identifiants
$host='mysql_server';
$user='username';
$pass='password';
$db='myDB';
$separator=";";
 
//Connecter à la DB
$DBLink=mysql_connect ($host, $user, $pass);
mysql_select_db($db, $DBLink);
 
//Extraire le nom des colonnes
$rsColumn = mysql_query("SHOW COLUMNS FROM myTABLE");
$columnLine="";
$columnCount=0;
if ($rsColumn) {
    if (mysql_num_rows($rsColumn) > 0) {
        while ($row = mysql_fetch_assoc($rsColumn)) {
            $columnLine .= $row['Field'].$separator;
            $columnCount++;
        }
        $columnLine .="\n";
    }
}
 
//Extraire les données
$rsData=mysql_query("SELECT * FROM myTABLE");
$dataLine="";
while ($row = mysql_fetch_array($rsData)) {
    for ($i = 0; $i < $columnCount; $i++) {
        $dataLine.=$row[$i].$separator;
    }
    $dataLine.="\n";
}
 
//Envoyer le contenu au navigateur internet
header("Content-type: text/x-csv");
header("Content-Disposition: attachment; filename=search_results.csv");
echo $columnLine.$dataLine;
exit;
?>

Le fichier texte envoyé au navigateur internet contient:
1ere ligne: la définition des champs séparée par un point-virgule,
lignes suivantes: la valeur de chaque champs de la ligne.

Plus besoin de PHPMyAdmin pour exporter les données d'une table ou pour transférer le contenu d'une base d'un serveur vers un autre. Ce petit script PHP enregistre le contenu d'une sélection vers un fichier texte au format CSV automatiquement.

Ajouter un commentaire

Les champs marqués d'un * sont obligatoires, les adresses emails se sont pas publiées.

A lire aussi

Réseaux sociaux
Présentation de l'article
Catégorie
php5 - db
Mise a jour
02/06/2010
Visualisation
vu 1964 fois
Public
Internaute
Auteur de la publication
Fobec
Admin
Auteur de 261 articles
|BIO_PSEUDO|
Commentaires récents

Publié par Fobec dans java

oups quelques lignes manquent sur ce code ! ... l'exemple est corrige et complet
Merci Tom

Publié par Fobec dans tuto

Les liens vers les feuilles de style sont definis dans le template. L'emplacement sur le FTP depend du CMS utilise, par exemple sous WordPress les fichiers sont dans le dossier '/wpcontent/themes'

Publié par fffffff dans CMS

tesffff

Publié par Fobec dans java

As-tu essaye sans le parametre de la cle ?
(supprimer la ligne url += "&key=" + this.ApiKey;)
A priori, cela fonctionne sans aucune authentification sur l'api ;)

Publié par BOKOMBEJEAN dans java

code source excellente,
maintenant comment l'afficher dans une zone de texte ou un champ de texte?