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 :

PHP ==> Excel, CSV


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 33
    Par défaut PHP ==> Excel, CSV
    Bonjour a tous,

    Je me retrouve un peut coincer a l'heure actuelle.
    Je souhaiterais pouvoir exporter des données de ma BD vers un fichier CSV.
    Pour cela j'ai commencer à suivre un tuto plutot bien expliquer, j'arrive a créer le fichier csv, mais je doit avoir un problème dans ma requête.
    Impossible d'obtenir plus d'une valeur !

    Voici le code actuel:
    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
    <?php
    header('Content-Type: text/csv;');
    header('Content-Disposition: attachment; filename="test.csv"');
     
    // This is an example of config.php
    $dbhost = '****';
    $dbuser = '****';
    $dbpass = '****';
    $dbname = '****';
     
    // This is an example opendb.php
     
    $conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql');
    mysql_select_db($dbname);
     
    $req=mysql_query("SELECT id_formation, titre_formation, cout FROM form_formations");
     
    $data=mysql_fetch_array($req);
     
    print_r($data);
    ?>"Id";"Titre";"Cout"<?php
     
    foreach($data as $d){
     
    echo "\n".'"'.$d->id_formation.'";"'.$d->titre_formation.'";"'.$d->cout.'"';
    }
    ?>
    Merci d'avance.

  2. #2
    Membre chevronné
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2011
    Messages
    351
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2011
    Messages : 351
    Par défaut
    [EDIT] Je viens de regarder le tuto, j'avais trouvé tout seul la réponse à ma question^^

    Bref, mysql_fetch_array retourne qu'une seule ligne du tableau de résultats (cf. ici pour la solution).

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 33
    Par défaut
    cette ligne sert à mettre un titre sur les colonnes dans le fichier excel.

  4. #4
    Membre chevronné
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2011
    Messages
    351
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2011
    Messages : 351
    Par défaut
    J'ai édité mon message précédent avant de voir ta réponse

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 33
    Par défaut
    xD no problème, par contre t'a pas d'idée au niveau de la requête ?

  6. #6
    Membre chevronné
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2011
    Messages
    351
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2011
    Messages : 351
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <?php
    mysql_connect("localhost", "mysql_user", "mysql_password") or
    die("Impossible de se connecter : " . mysql_error());
    mysql_select_db("mydb");
     
    $result = mysql_query("SELECT id, name FROM mytable");
     
    while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
       printf("ID : %s  Nom : %s", $row[0], $row[1]);
    }
     
    mysql_free_result($result);
    ?>
    Exemple tiré de la doc PHP de la fonction : http://www.php.net/manual/fr/functio...etch-array.php
    Ceci étant, la fonction que tu utilises est obsolète, pourquoi ne pas utiliser les PDO comme dans le tuto qui te sert de base ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Librairies] générer un .csv en php pour excel
    Par allowen dans le forum Langage
    Réponses: 3
    Dernier message: 14/12/2005, 16h40
  2. [PEAR][Spreadsheet] PHP/EXPORT EXCEL : nombre de formats de cellule différents !
    Par joe_le_mort dans le forum Bibliothèques et frameworks
    Réponses: 6
    Dernier message: 27/10/2005, 17h21
  3. Exporter des données d'un requete SQL vers excel (csv)
    Par PrinceMaster77 dans le forum ASP
    Réponses: 9
    Dernier message: 08/10/2005, 22h28
  4. [Excel] Excel et csv
    Par gledoux dans le forum Bibliothèques et frameworks
    Réponses: 16
    Dernier message: 01/08/2005, 14h45
  5. Import Excel / CSV
    Par aston_max dans le forum SQL Procédural
    Réponses: 8
    Dernier message: 04/07/2004, 23h31

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