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 :

remplir un tableau avec les noms des champs d'une table [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 9
    Points : 7
    Points
    7
    Par défaut remplir un tableau avec les noms des champs d'une table
    Existe-il une fonction pour remplir un tableau avec les noms des champs d'une table svp?

  2. #2
    Membre habitué Avatar de Aliosha
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    124
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 124
    Points : 138
    Points
    138
    Par défaut
    Cherche du côté de mysql_list_fields

    Edit : je viens de regarder et... « La fonction mysql_list_fields est dépréciée. Il est préférable d'utiliser la fonction mysql_query avec comme requête SHOW COLUMNS FROM table [LIKE 'name'] à la place. »
    « Le vécu-plat excite le chaos-rêve. » Traité de l'inactivité, Dimitri Grouchkch.

  3. #3
    Membre actif Avatar de bigltnt
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    227
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 227
    Points : 205
    Points
    205
    Par défaut
    Salut !

    Pour une fonction pré-existante je ne sais pas, mais à mon avis ca ne doit pas être trop difficile à mettre en oeuvre.

    Quand tu parles de table, c'est une BDD ?

    En fait avec une petite boucle et un foreach (foreach pour avoir les indices), ca doit se faire tout seul ! Donne quelques lignes de code si tu peux (genre ta table et si c mysql ou autre)!

    Regarde ici si y'a pas ce que tu veux !

    ++

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 9
    Points : 7
    Points
    7
    Par défaut Essai 1 :
    Merci pour vos informations.
    Voici ce que j'ai essayé : comment faire pour que ça marche svp?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
     
    $sql = mysql_connect('mysql6.celeonet.fr', 'z', 'a');
    $db = mysql_select_db('e', $sql);
    $query = "SHOW COLUMNS FROM aliments [LIKE 'nomchamp']";
    foreach(tableau as nomchamp);
     
    mysql_close();
    ?>

  5. #5
    Membre actif Avatar de bigltnt
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    227
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 227
    Points : 205
    Points
    205
    Par défaut
    Salut !
    Alors en fait, foreach($result as $indice => $valeur) c'est bien mais quand $result contient tout dès le début. Ici je vais te montrer une autre méthode, car je crois qu'avec foreach c'est pas possible.

    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
     
    <?php
    $tab=array(); //Tableau final
     
    $liendb = mysql_connect('mysql6.celeonet.fr', 'z', 'a');
    mysql_select_db("e");
     
    //En admettant que ta requête soit bonne (je connais pas trop), ca doit ressembler à çà:
     
    $sql="SHOW COLUMNS FROM aliments";
    $temp1=mysql_query($sql);
     
    /* A cette étape avant de poursuivre j'ai fait un $result1=mysql_fetch_array($sql) et j'ai fait un print_r($result1) pour voir ce que ca donnait. Et comme retour, on voit que c'est le champ [Field] qui t'interresses */
     
    while($result1=mysql_fetch_array($temp1)) //Ici on traite chaque ligne du resultat
    {     $tab=$result1['Field'];
    }
     
    print_r($tab); //POur verifier ce que le tableau contient au final. Tu accèderas ensuite à ses valeurs par $tab['nomduchamp']
    Voila j'espère ne rien avoir oublié et ne pas avoir fait d'erreurs !

    Tiens nous au courant si ca marche !

    ++

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 9
    Points : 7
    Points
    7
    Par défaut Merci pour votre solution qui fonctionne
    http://www.solidaritok.com/nutrition...tab-champs.php

    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
    30
    <?php
    $tab=array(); //Tableau final
     
    $liendb = mysql_connect('mysql6.celeonet.fr', 'a', 'z');
    mysql_select_db("e");
     
    //En admettant que ta requête soit bonne (je connais pas trop), ca doit ressembler à çà:
     
    $sql="SHOW COLUMNS FROM aliments";
    $temp1=mysql_query($sql);
     
    /*
    A cette étape avant de poursuivre,
       $result1=mysql_fetch_array($sql) et
       print_r($result1) 
    servent a voir ce que ca donne. 
    Et comme retour, on voit que c'est le champ [Field] qui nous interresse */
     
    while($result1=mysql_fetch_array($temp1)) //Ici on traite chaque ligne du resultat
    {     
       $tab=$result1['Field'];
       print_r($tab); 
       print"<BR>"; 
    }
     
    /*Pour verifier ce que le tableau contient au final. 
    On accède ensuite à ses valeurs par $tab['nomduchamp']*/
     
    mysql_close();
    ?>

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

Discussions similaires

  1. [XL-2003] Remplir un tableau avec les noms des cellules
    Par tioch dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 10/08/2011, 19h24
  2. Réponses: 5
    Dernier message: 11/07/2007, 17h03
  3. récupérer les noms des champs d'une table access
    Par fabrice33 dans le forum Accès aux données
    Réponses: 2
    Dernier message: 06/04/2007, 20h38
  4. [DB2]Obtenir tous les noms des champs d'une table
    Par ptr83 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 13/11/2006, 10h31
  5. Réponses: 2
    Dernier message: 01/08/2006, 14h38

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