Bonjour,
Je me débroille (en tant que novice) mais la je bloque et je ne comprends pas pourquoi.
J'ai deux tables tb_objets et tb_objets_has_tb_equipment_objet:
tb_objets
-- id_objet
-- fd_numero_objet
-- fd_autre_coloneDans mon cas, j'ai plusieurs objets dans ma table "tb_objets" qui ont un "id_objet" unique. C'est a dire qu'il n'y a pas de doublons.tb_objets_has_tb_equipment_objet
-- tb_objets_id_objet
-- tb_equipment_objet_id_equipment
Dans l'autre table j'ai qu'un objet qui a des équipement. C'est l'objet qui a l'id 8. Donc ma table "tb_objets_has_tb_equipment_objet", j'ai deux lignes:
La premiere ligne a
tb_objets_id_objet =8
tb_equipment_objet_id_equipment = 22J'ai besoin d'afficher tous les équipements de l'objet qui a l'ID 8.tb_objets_id_objet =8
tb_equipment_objet_id_equipment = 26
Pour cela j'ai fait une jounture comme ceci
J'ai aussi essayé LEFT JOIN, RIGHT JOIN, mais sans succès.
Code PHP : 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
20
21
22 $id=8; $sql_mod = "SELECT * FROM tb_objets INNER JOIN tb_objets_has_tb_equipment_objet ON tb_objets.id_objet=tb_objets_has_tb_equipment_objet.tb_objets_id_objet WHERE tb_objets.id_objet LIKE ".$id; $query_mod = mysql_query($sql_mod)or die(mysql_error()); $nb_mod = mysql_num_rows($query_mod); if($nb_mod){ while($data_mod = mysql_fetch_assoc($query_mod)){ ?> <fieldset><legend>Modification de objet id: <?php echo $data_mod['id_objet']; ?></legend> <?php echo 'a l\'équipement :'; echo $data_mod['tb_equipment_objet_id_equipment']; echo '<br>'; #include($root.'include/manage_objets_add_mod.form.php'); ?> </fieldset> <?php } }else{ echo 'magage.objet.mod.iframe : error, no record'; }
Je ne comprends pas pourquoi il y a deux <fieldset> avec l'i 8, qui s'affiche car j'ai qu'un objet qui a l'ID 8 qui est enregistré dans la table "tb_objets"
Comment puis-je corriger ma requete pour que j'aie un <fieldset> avec l'ID 8 et à l'intérieur, les deux equipement 22 et 26???
Merci pour votre aide
Partager