Export de base au format csv

Soyez le premier à donner votre avis sur cette source.

Snippet vu 5 739 fois - Téléchargée 17 fois

Contenu du snippet

Hello,
voici un petit script, qui est un mix entre deux script que j'ai récupéré sur le net.
le but de ce code est d'exporter votre base de données au format csv.
J'espère que cette petite contribution vous sera utile.
a++

Source / Exemple :


<?php

$bdd = mysql_connect('votre serveur', 'login', 'password');
mysql_select_db('votre base',$bdd);
mysql_query("SET NAMES 'utf8'");

header("Content-Type: application/csv-tab-delimited-table");
header("Content-disposition: filename=user_sale_spinnaker.csv");

    $listeTables = mysql_query("show tables", $bdd);
    while($table = mysql_fetch_array($listeTables))
    {
		$resQuery = mysql_query("SELECT * FROM ".$table[0]);
		$fields = mysql_num_fields($resQuery);
  $i = 0;
  while ($i < $fields) {
    echo mysql_field_name($resQuery, $i).";";
    $i++;
  }
  echo "\n";

  // données de la table
  while ($arrSelect = mysql_fetch_array($resQuery, MYSQL_ASSOC)) {
   foreach($arrSelect as $elem) {
    echo "$elem;";
   }
   echo "\n";
  }
		
	}
?>

Conclusion :


:=>

A voir également

Ajouter un commentaire Commentaires
individis-bis Messages postés 293 Date d'inscription vendredi 26 septembre 2003 Statut Membre Dernière intervention 25 septembre 2008
11 avril 2012 à 12:08
Et pourquoi ne pas tout bêtement utiliser la fonction idoine de l'administration php ? En plus toutes les options sont possibles. Choix des champs, codage etc...
darkvador59 Messages postés 9 Date d'inscription lundi 9 août 2004 Statut Membre Dernière intervention 10 avril 2012
10 avril 2012 à 19:29
Oui ca fonctionne, il y a plein de methodes aussi comme :

$fp = fopen($filename.'.csv', 'w');
$search=array("\t",""");
$replace=array(" ","'");
while ($arrSelect = mysql_fetch_array($resQuery, MYSQL_ASSOC)) {
foreach($arrSelect as $key=>$elem) {$elem[$key]=str_replace($search, $replace, $product);}
fwrite($fp, """ . implode(""\t"", $elem) . """);
fwrite($fp,"\n");

// ou simplement fputcsv($fp, $elem,"\t",""");

}
fclose($fp);

Merci quand meme

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.