IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

export de donnes d'une table


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    120
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 120
    Par défaut export de donnes d'une table
    Bonjour,

    je dois faire un export des données d'une table dans un fichier .csv.
    Existe t-il une fonction mysql pour le faire?

    ou alors je dois faire un select et ecrire le résultat dans un fichier avec fwrite ?

    Merci

  2. #2
    Membre émérite
    Avatar de Dia_FR
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    512
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2006
    Messages : 512
    Dia [ Page DVP ] [ Site pro ]

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    120
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 120
    Par défaut
    Et que penses tu de le faire en mysql ? comme ci-dessous ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    SELECT a,b,a+b INTO OUTFILE '/tmp/result.text'
    FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
    LINES TERMINATED BY '\n'
    FROM test_table;

  4. #4
    Membre émérite
    Avatar de Dia_FR
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    512
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2006
    Messages : 512
    Par défaut
    en effet, c'est dans le manuel de référence MySQL

    honnêtement, j'ai jamais testé

    ma foi, tu peux essayer, ça coûte rien

    par contre je pense pas que ça puisse te générer un csv comme tu le voulais
    on dirait que ça te sort un bête fichier .txt
    Dia [ Page DVP ] [ Site pro ]

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    120
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 120
    Par défaut
    J'ai finalement utiliser la bonne solution de david ci dessous.

    J'ai un problème lorsque le contenu d'un champs de ma requete contient des retours chariots, le fichier excel pense que c'est la fin d'une ligne alors que c'est dans la même colonne.


    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
    29
     
    <?
    //ce fichier montre un exemple permettant de generer un fichier excel (on peut remplacer le .csv par .xls)
     
    //parametres de connexion a la bdd
    include("config.php");
     
    //Premiere ligne = nom des champs (si on en a besoin)
    //$csv_output = "p_nom,p_email";
    //$csv_output .= "\n";
     
    //Requete SQL
    $query = "SELECT ...
    FROM ...
    WHERE ...
    ";
    $result = mysql_query($query)
    or die('Erreur SQL !<br />' . $query . '<br />' . mysql_error());
     
    //Boucle sur les resultats
    while($row = mysql_fetch_array($result)) {
    $csv_output .= "$row[p_nom] $row[p_prenom],$row[p_nom],$row[p_prenom],$row[p_email]\n";
    }
     
    header("Content-type: application/vnd.ms-excel");
    header("Content-disposition: attachment; filename=AddressBook_" . date("Ymd").".csv");
    print $csv_output;
    exit;
    ?>

Discussions similaires

  1. Exporter des données d'une tables access
    Par elodie22 dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 19/06/2008, 22h59
  2. Réponses: 2
    Dernier message: 23/07/2007, 14h12
  3. Réponses: 5
    Dernier message: 10/07/2007, 09h43
  4. script d'exportation des données d'une table sous oracle
    Par pierre2410 dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 26/06/2007, 22h26
  5. [MySQL] Exporter les données d'une table en PHP
    Par caro_tpl dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 08/08/2006, 11h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo