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 :

Afficher r�sultat de requ�te en liste ul li [MySQL]


Sujet :

PHP & Base de donn�es

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �clair� Avatar de php_de_travers
    Inscrit en
    Juin 2004
    Messages
    460
    D�tails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 460
    Par d�faut Afficher r�sultat de requ�te en liste ul li
    Bonjour,

    j'ai des enregistrements qui contiennent 3 niveaux d'information dans 2 champs diff�rents :

    sport - equipe - nom
    ex :
    1 - basket - benjamin - kevin
    2 - basket - benjamin - paul
    3 - basket - minime - louis
    4 - basket - cadet - sylvain
    5 - rugby - minime - robert
    6 - rugby - minime - mathieu

    Je souhaiterais les exploiter gr�ce � des listes (ul li ...) et afficher :

    - basket
    -- benjamin
    --- kevin
    --- paul
    -- minime
    --- louis
    -- cadet
    --- sylvain

    - rugby
    -- minime
    --- robert
    --- mathieu

    Est-ce possible ? Si oui comment ?

  2. #2
    Expert confirm�
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 681
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 681
    Par d�faut
    tu peux stocker �a dans un tableau multi-dimensionnel comme �a par exemple :
    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
    $tab = array();
     
    while ($ligne = mysql_fetch_assoc($resultat)) {
        if (!isset($tab[$ligne['sport']])) {
            $tab[$ligne['sport']] = array();
        }
     
        if (!isset($tab[$ligne['sport']][$ligne['equipe']])) {
            $tab[$ligne['sport']][$ligne['equipe']] = array();
        }    
     
        $tab[$ligne['sport']][$ligne['equipe']][] = $ligne['nom'];
    }
     
    echo '<pre>';
    print_r($tab);
    echo '</pre>';

  3. #3
    Membre �clair� Avatar de guigouz
    Profil pro
    �tudiant
    Inscrit en
    Mars 2008
    Messages
    84
    D�tails du profil
    Informations personnelles :
    �ge : 36
    Localisation : France, Bouches du Rh�ne (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : Mars 2008
    Messages : 84
    Par d�faut
    Bien s�r que c'est possible ! Tout est possible (enfin je crois... cette information reste � v�rifier ) !

    Donc... il te suffit de faire un SELECT sur ta table puis, lorsque tu boucles pour lire ton dataset, si le sport suivant est diff�rent de celui que tu viens d'�crire, alors tu rajoutes un <ul>... et pareil pour les �quipes !

    Je m'explique par le code :
    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
    for($i=0; $ligne = mysql_fetch_assoc[$resultat]; $i++)
    {
          if($sportCourant <> $ligne['sport'])
          {
               if($i <> 0) { echo '</ul>'; }
               $sportCourant = $ligne['sport'];
               echo '<ul>';
               echo '<li>'.$ligne['sport'].'</li>';
          }
     
          if(($equipeCourante != $ligne['equipe'] && $sportCourant == $ligne['sport']) || ($equipeCourante == $ligne['equipe'] && $sportCourant != $ligne['sport']))
          {
               if($i <> 0) { echo '</ul>'; }
               $equipeCourante = $ligne['equipe'];
               echo '<ul><li>'.$ligne['equipe'].'<li>';
          }
     
          echo '<li>'.$ligne['nom'].'</li>';
    }
    Voila, je n'ai pas pu tester mais je l'ai fait un tourner sur papier �a semble correct... Si �a ne marche pas, tu peux �ventuellement penser � faire deux requ�tes : un pour r�cup�rer uniquement les sports et une autre, dans ta boucle, pour les �quipes avec leurs joueurs respectif au sein de ce sport.
    Ce sera un peu plus lourd pour la base mais plus simple � mettre en �uvre...

    Voila, en esp�rant t'avoir aid�. N'h�site pas � me demander plus d'infos.
    Bonsoir

    Guigouz

  4. #4
    Membre �clair� Avatar de php_de_travers
    Inscrit en
    Juin 2004
    Messages
    460
    D�tails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 460
    Par d�faut
    Ca marche pas trop mal.

    Merci.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. R�ponses: 1
    Dernier message: 17/12/2013, 10h01
  2. R�ponses: 1
    Dernier message: 12/12/2011, 10h07
  3. [AC-2002] Afficher r�sultat de requ�tes dans une textBox
    Par 0sef40 dans le forum IHM
    R�ponses: 2
    Dernier message: 28/04/2011, 08h07
  4. R�ponses: 4
    Dernier message: 07/05/2008, 16h26
  5. [MySQL] Afficher r�sultat requete dans une liste en html
    Par maxeur dans le forum PHP & Base de donn�es
    R�ponses: 8
    Dernier message: 18/02/2008, 09h10

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