Problème requête et résultat
Posté : 16 nov. 2008, 21:14
Bonjour,
j'effectue une requête avec left outer join pour deux tables donc.
Le résultat renvoyé est satisfaisant, j'obtiens une grosse table avec les lignes suivantes :
(table catégories) ID NOM DESCRIPTION - (table Matériau) ID ID_CAT COMPOSANT
..........................1....Papier...................................................1...1..........bois
..........................1....Papier...................................................3...1..........composant blanchissant
..........................1....Papier...................................................9...1 ..........autre composant du bois
.......................... 3....Acier......Alliage du fer...........................2...3..........Fer
..........................3....Acier......Alliage du fer...........................8...3..........Carbone
Etc.
Mon problème est pour arriver à afficher ceci :
NOM x1 : COMPOSANT 1 COMPOSANT 2 COMPOSANT 3 ... COMPOSANT n
J'ai essayé avec
for ($i=1;$i<$cat(correspond au nombre de catégories... pas bon mais c'est pas le plus important) ; $i++) {
rappel de la requête à chaque fois avec la condition WHERE Catégories.ID = $i puis
$row = Mysql_fetch_array (requete) {
while { champs row; echo NOM; while { même champs row; for ($a=0;$a<mysql_affected_row(requete);$a++) { echo Composant($a)...
Enfin mon code est nul...
C'est pour cela que je demande votre aide.
Faut-il changer la requête ? Il faudrait que je puisse compter le nombre de ligne du tableau pour les ID de catégories identiques, puis afficher une fois le nom correspondant à cette catégorie, et puis toutes les lignes des composants appartenant à cette catégorie.
Si c'est facile pour vous, Grand Merci d'avance !
j'effectue une requête avec left outer join pour deux tables donc.
Le résultat renvoyé est satisfaisant, j'obtiens une grosse table avec les lignes suivantes :
(table catégories) ID NOM DESCRIPTION - (table Matériau) ID ID_CAT COMPOSANT
..........................1....Papier...................................................1...1..........bois
..........................1....Papier...................................................3...1..........composant blanchissant
..........................1....Papier...................................................9...1 ..........autre composant du bois
.......................... 3....Acier......Alliage du fer...........................2...3..........Fer
..........................3....Acier......Alliage du fer...........................8...3..........Carbone
Etc.
Mon problème est pour arriver à afficher ceci :
NOM x1 : COMPOSANT 1 COMPOSANT 2 COMPOSANT 3 ... COMPOSANT n
J'ai essayé avec
for ($i=1;$i<$cat(correspond au nombre de catégories... pas bon mais c'est pas le plus important) ; $i++) {
rappel de la requête à chaque fois avec la condition WHERE Catégories.ID = $i puis
$row = Mysql_fetch_array (requete) {
while { champs row; echo NOM; while { même champs row; for ($a=0;$a<mysql_affected_row(requete);$a++) { echo Composant($a)...
Enfin mon code est nul...
C'est pour cela que je demande votre aide.
Faut-il changer la requête ? Il faudrait que je puisse compter le nombre de ligne du tableau pour les ID de catégories identiques, puis afficher une fois le nom correspondant à cette catégorie, et puis toutes les lignes des composants appartenant à cette catégorie.
Si c'est facile pour vous, Grand Merci d'avance !