Aller au contenu

Probleme de while et Sql


MissOlana

Sujets conseillés

Bonjour à tous, voici mon probleme , j'ai chercher en vain la solution, alors je viens à vos lumières
Voici un petit script qui me permet d'afficher les membres en lignes a partir de la table "comptes",le script me l'affiche en colone de 3, mon probleme est que je cherche à associer les photos des membres de la table "album".
Le but est de voir le nom des personnes en ligne ainsi que toutes les photos de leur album.
Et là c'est le drame ! je n'arrive pas à executer deux while ( un qui cherche dans les connectés et l'autre qui va chercher toutes les photos dans la table "comptes".
Je ne sais même pas si cela est possible.
Pouvez vous me dire cette action est réalisable?
Peux t'on imbriqué deux While ?


la table "comptes"
+-----------+
| nom |
+-----------+
| Pierre |
| paul |
| Julia |
| Martine |
+-----------+

La table "album"
+-----------++-----------+
| nom | photo |
+-----------++-----------+
| Pierre | photo1.jpg |
| Pierre | photo2.jpg |
| Julia | julia.jpg |
| Martine | martine.jpg |
+-----------++-----------+



Resultat recherché
+-----------++-----------++-----------+
| nom | photo | |
+-----------++-----------++-----------+
| Paul | paul.jpg | |
| Pierre | photo1.jpg | photo2.jpg | (noté que le while doit chercher toutes les photos)
| Julia | julia.jpg | |
| Martine | martine.jpg| |
+-----------++-----------++-----------+

Le script de départ

<?php$req=mysql_query("select 'nom' from comptes WHERE time");while ($data=mysql_fetch_array($req))  {  $tablo[]=$data;    }  $nbcol=3;  echo '<TABLE>';  $nb=count($tablo);  for($i=0;$i<$nb;$i++)  {            $nom=$tablo[$i]['nom'];          if($i%$nbcol==0)    echo '<tr><td>    <table width="258"  >        <tr>          <td>',$nom,'</td>          <td>',$album,'</td>        </tr>      </table></td';      if($i%$nbcol==($nbcol-1))  echo '</tr>';  }  echo '</table>';?>
Lien vers le commentaire
Partager sur d’autres sites


SELECT n.nom, GROUP_CONCAT(a.photo) FROM nom n LEFT JOIN album a ON a.nom=n.nom GROUP BY n.nom

Avec cette requête tu n'as plus besoin d'imbriquer quoique ce soit vu que les photos seront toutes sur la même ligne.

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...