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 :

Retrouver et afficher un champ d'un tableau issu d'un mysql_query [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Inscrit en
    Mars 2007
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 7
    Par défaut Retrouver et afficher un champ d'un tableau issu d'un mysql_query
    Voilà. J'ai fait un query sur ma base de donnée et j'obtiens quelque chose comme ceci(Je précise cependant que je n'affiche pas le résultat, car j'en ai pas besoin tel quel) :

    champA champB champC champD

    "données A" " 19 " " 50 " " 69 "
    "données A" " 70 " " 12 " " 18 "
    "données A" " 54 " " 87 " " 44 "


    la recherche ayant portée sur "données A".
    Je souhaite maintenant savoir comment atteindre un de ces champs.

    Voilà je m'explique : J'avais pour habitude de faire des recherches sur ma base, qui me donnaient en résultat qu'une seule ligne. Donc pour atteindre un des chamlps du résultat, je n'avais que ça à faire :

    $maligne=mysql_fetch_array($recherche) or die (" ");
    et pour afficher un champ : echo $maligne [champB];

    C'était pratique, en plus des exemples comme ça y'en a des milliards sur internet.
    Malgré pas mal de recherches avec mon ami Google, je ne suis jamais tombé sur un exemple semblable au cas qui me préoccupe aujourd'hui.
    Voilà, si cette question a déjà été traité 150 fois sur ce forum, j'accepte un coup de pied virtuel, mais indiquez moi ou trouver la réponse ou le tuto. BIG merci.

    Maver

  2. #2
    Membre très actif
    Homme Profil pro
    Inscrit en
    Avril 2005
    Messages
    614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Turquie

    Informations forums :
    Inscription : Avril 2005
    Messages : 614
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    while($maligne=mysql_fetch_array($recherche)){
    if($maligne['champA']==$ma_recherche){
    echo $maligne ['champB'];
    break;
    }
    }
    dit toi que mysql_fetch_array prend la ligne d'un tableau où se trouve le pointeur et place le pointeur sur la ligne suivante

    par défaut la premiere fois le pointeur est sur le premiere ligne du tableau.

  3. #3
    Membre du Club
    Inscrit en
    Mars 2007
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 7
    Par défaut
    Merci beaucoup pour cette réponse.
    Cependant devoir faire une boucle pour retrouver un champ de mon tableau, c'est justement ce que je veux éviter. Je me dis (je me dis parfois des choses bizarres), qu'il doit y avoir un moyen plus simple.

    J'ai donc mon tableau, suite à ma recherche (mysql_query).

    Je range le résultat dans une var à l'aide de mysql_fetch_array . Bon, d'après ce que tu dis, maximenet, et le manuel php aussi d'ailleurs mais en plus compliqué, mysql_fetch_array ne prend qu'une ligne de mon beau tableau au lieu de tout prendre. Bon, mais à la réflexion, je ne suis plus tellement ami avec mysql_fetch_array, je veux donc bien utiliser une autre fonction. L'essentiel est que je puisse ranger mon résultat dans une variable, et accéder facilement, simplement, aux champs qui composent mon tableau sans autre opération (ni nouvelle query, ni boucle, ni prière)

    Quelquechose d'aussi simple que :

    echo $montableau [champB];

    quitte à ajouter un index, ou tout ce qu'il faudra.

    Ca doit exister, non ?

    Rappel: voilà de quoi il a l'air mon tableau :

    champA champB champC champD

    "données A" " 19 " " 50 " " 69 "
    "données A" " 70 " " 12 " " 18 "
    "données A" " 54 " " 87 " " 44 "

    Maver

  4. #4
    Membre très actif
    Homme Profil pro
    Inscrit en
    Avril 2005
    Messages
    614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Turquie

    Informations forums :
    Inscription : Avril 2005
    Messages : 614
    Par défaut
    euhhh d'après moi çà n'existe pas.

    Pour info à une certaine époque où j'apprenais le php je me suis posé la meme question que toi tt de suite.

    dit toi que dans tous les cas même si elle existait elle ferai une boucle sur chaque ligne retourné par la bdd.

    voilà. a+

  5. #5
    Membre émérite
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Juin 2005
    Messages : 572
    Par défaut
    Je n'ai absolument pas compris ta demande

    Si tu désires une fonction qui renvoit directement un champ dans un tableau, il va falloir la créer (en masquant l'accès à la base) ^^

  6. #6
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2006
    Messages : 63
    Par défaut
    Salut,
    Je n'ai peut-être pas compris le problème.
    Mais voilà peut-être une piste côté requête SQL. Ce que je fais et qui marche en général (je débute en php) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $sql="SELECT 
            zoneA, zoneB, zoneC 
            FROM MonFichier;        
            $id=mysql_query($sql) 
                  or die( "Exécution requête MonFichier impossible.");
    et pour l'affichage :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    while($record = mysql_fetch_object($id)) { ?>        
                    <TR>
                        <TD><?php echo $record->zoneA; ?></TD>
                        <TD><?php echo $record->zoneB; ?></TD>
                        <TD><?php echo $record->zoneC; ?></TD>
    j'espère avoir répondu à ton problème ?

  7. #7
    Membre du Club
    Inscrit en
    Mars 2007
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 7
    Par défaut Faire compliqué alors qu'il ya plus simple
    Voilà juste pour remercier à ceux qui ont répondu ici. Après pas mal de recherches sur le net, il m'est apparu évident que ce que je cherchais à faire n'était pas dans mes compétences, et qu'il y avait plus simple. Je pouvais sans risquer de trop charger la barque, faire plusieurs querys par page. Dans mon cas 5 ou six. Et donc atteindre directement le champ de ma base de donnée dont j'ai besoin.

    maver

    P.S: Je rappelle que mon intention de départ était de n'avoir qu'un seul query. Ensuite de ranger le résultat dans un array alors même que le résultat de mon query était disposé sur plusieurs lignes. Dans mon cas une boucle n'aurait servi à rien. Car je souhaitais afficher chaque ligne de mon tableau à des endroits totalement différents de ma page et surtout, de manière totalement indépendante des autres lignes de ma boucle.

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 04/01/2011, 15h14
  2. [Tableaux] Afficher champ d'un tableau
    Par marty499 dans le forum Langage
    Réponses: 3
    Dernier message: 18/04/2008, 15h09
  3. Afficher un exemple dans un tableau en fonction d'un champs de formulaire
    Par kilian67 dans le forum Général JavaScript
    Réponses: 22
    Dernier message: 12/03/2008, 14h24
  4. [MySQL] Comment affiché un résultat avec plusieurs lignes et plusieurs champs dans un tableau
    Par Yagami_Raito dans le forum PHP & Base de données
    Réponses: 18
    Dernier message: 15/05/2007, 14h19
  5. [MySQL] Afficher champs vides dans tableau
    Par rasmulti dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 23/02/2007, 01h19

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