[PHP]Double requête SQL

Résolu/Fermé
Utilisateur anonyme - 1 nov. 2006 à 17:25
 Utilisateur anonyme - 3 nov. 2006 à 08:49
Bonjour
Dans mon site il ya un petit blem'
explication
Je fais une première requête SQL m'affichant le nom de l'animateur.
Puis j'en fait une autre qui en fonction du nom de l'animateur m'affiche le nom des membres qui ont cet animateur.
Voici le code :
   <?php
   //  on affiche les équipes du secteurs  
     mysql_connect('*********','**********','********');
     mysql_select_db('********');
  //on se connecte à la base SQL
   $team=mysql_query("SELECT*FROM equipe WHERE secteur='$secteur' ORDER BY animateur" );
   $equipe=mysql_fetch_array($team);
   mysql_close();
       while($equipe)
         //on affiche le nom de l'animateur
           {
               $animateur=$equipe['animateur'];
             ?>
   Equipe de : <?php echo $animateur?><br/>avec :
            <?php
               $adherants=mysql_query("SELECT*FROM equipe WHERE animateur='$animateur'" );
               $membre=mysql_fetch_array($adherants);
                     while($membre)
   //on affiche les membre où l'on as le même animateur
                $membre=$membre['membre'];
                   {
                      echo $membre.',';
                     }
                 ?>
          <br/>
          <!--lien vers léquipe en détails -->
          <a href="./equipe/.'$secteur'.'.php?anim='.'$animateur'.>Voir cette équipe en détails</a>
          <?php
                }
   //on se déconnecte des connexions SQL
   // fin de l'affichage des équipes  
  ?>


J'ai comme entrée

Prénom : clémence ; secteur : les herbiers ; animateur : babeth
Prénom : charlène ; secteur : les herbiers ; animateur : babeth

Et à la fin je voudrais voir
Equipe de : Babeth
avec : Charlène, Clémence,


Comment faire ??
Merci pour l'aide
A voir également:

1 réponse

ceddec Messages postés 148 Date d'inscription dimanche 31 juillet 2005 Statut Membre Dernière intervention 10 mars 2012 82
2 nov. 2006 à 18:15
Bonjour,

Voila ce que je pense :

query="SELECT * FROM equipe WHERE secteur='$secteur' ORDER BY animateur";
$res=mysql_query($query);
while($equipe=mysql_fetch_array($res))
{
    $anim=$equip['animateur']; 
    query2="SELECT * FROM equipe WHERE animateur='$anim' "; 
    $res2=mysql_query($query2);
    echo "Equipe de : $anim <br>avec :";
    while($membre=mysql_fetch_array($res2))
    {
         echo $membre['membre'].","; 
     }
<a href="./equipe/.'$secteur'.'.php?anim='.'$anim'.>Voir cette équipe en détails</a>
}
mysql_close();


Ceci n'a pas été testé
0
Utilisateur anonyme
2 nov. 2006 à 19:41
Non sa ne marche pas.
Il m'afiche toujours deux fois l'animateur.
Ce code est vraiment ch***t
<?php  //on se connecte à la base SQL
    $team=mysql_query("SELECT*FROM equipe WHERE secteur='$secteur'");
      while($equipe=mysql_fetch_array($team))
//on affiche le nom de l'animateur
         {
             $animateur=$equipe['animateur'];
?>
<p>Equipe de : <?php echo $animateur?><br/>avec : 
<?php
            $adherants=mysql_query("SELECT*FROM equipe WHERE animateur='$animateur'");
                  while($membre=mysql_fetch_array($adherants))
//on affiche les membre où l'on as le même animateur
                       {
                                echo $membre['membre'].',';
                         }
?>
<br/>
<!--lien vers l'équipe en détails -->
<a href="./equipe/<?php echo$secteur?>.php?anim=<?php echo$animateur?>&amp;page=equipe de <?php echo$animateur?>">
Voir cette équipe en détails</a><br/></p>
<?php
          }
mysql_close();
//on se déconnecte des connexion SQL
//fin de l'affichage des équipes  
?>


Ton script m'affiche la même chose mais avant il m'affichait rien
0
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 1 527
2 nov. 2006 à 20:23
Moi je verrais plutôt le tout en une requête, vu qu'on a déjà tout dans la première.
Ensuite on fait un nouveau tableau qui trie le tout par animateur.
<?
//Requête générale
$res=mysql_query("SELECT  animateur, membre FROM equipe WHERE secteur='$secteur' ORDER BY animateur");
/* On crée un tableau où chaque clé est un animateur, et pour chaque
    animateur on a encore un tableau avec la liste des membres associés 
    à lui.  C'est un tableau multidimensionnel.  */
while($tab=mysql_fetch_assoc($res))
{
         $infos[$tab['animateur'] ] []  = $tab['membre'];
}

/* Pour chaque animateur on affiche le nom.... */
foreach ( $infos as $animateur => $membres )
{
        echo "Equipe de $animateur:<br/>Membres: ";

        /* Pour chaque membre de cet animateur, on affiche le nom .... */
        foreach ( $membres as $membre )
        {
               echo "$membre ";
        }
}
0
Utilisateur anonyme > kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016
3 nov. 2006 à 08:49
..et le...le...enfin, non parce c'est...ya...quand...bah tu sais là le...

Beh tu peut gratter un ticket de loto car sa à marcher du premier coup !!

Bravo la bete
Merci beaucoup pour te remercier je te fais plein de bizoux
Aller bonne journée
Bravo vous avez fait votre BA de la journée
0