Doublons a affichage d'une requete composée de trois tables
roumdar
Messages postés6Date d'inscriptionlundi 17 novembre 2008StatutMembreDernière intervention26 novembre 2008
-
17 nov. 2008 à 21:28
cs_cantador
Messages postés4720Date d'inscriptiondimanche 26 février 2006StatutModérateurDernière intervention31 juillet 2021
-
24 nov. 2008 à 11:04
Bonsoir je suis sur un problème qui dure depuis Deux Semaines : Enlever des doublons d'un champ à l' affichage,
j'ai beau parcourir tous les tutos sur le Web les ouvrages mais je ne trorve aucun exemple concret expliquant quel boucles utiliser pour extraire les données d'une table sans doublons ( meme si j'utilise le DISTINCT ds ma requete ), je pense qu ele probleme vient du choix de la boucle (while, for, et surtout goreach que je ne sasis pas utiliser ) en fait avant de tous déballer ( requet ,table, codes ect ) je voulais avoir un cours avec exemple ou on utilise les boucles mais avec des requetes avec 3tables la plupart des cours avec les boucles c'est sur des nombres ou les cours concernent une clé primaire et une secondaire ...
Merci Merci de votre aide j'attend avec Impatience !!
A voir également:
Doublons a affichage d'une requete composée de trois tables
roumdar
Messages postés6Date d'inscriptionlundi 17 novembre 2008StatutMembreDernière intervention26 novembre 2008 23 nov. 2008 à 12:35
Objectif :Afficher les Infos de tous les Articles d'un Magasin choisi dans un tableau
Je travaille avec Php et MySQL
A savoir :
-- 1 Magasin a plusieurs Articles
-- 1 Article appartient à 1 Magasin
-- 1 Article appartient à 1 Modèle d'ArticleS
-- 1 Modèle d'Articles à plusieurs Articles
-- 1 Article a 1 ou plusieurs Tailles
-- 1 Taille à plusieurs Articles
-- 1 LiaisonArticlesTailles ( Noucelle tables crée par les Cardinalités (1,N)
entre Articles et Tailles)
Mes Tables
en HTML :( après je vous mets le code PHP)
SORTIE
----
Ici $mod_Nom, Ici $taille_Nom(toutes les tailles),
----
Ici $art_Nom(tousles articles), Ici $prixUnitaireArticle
C'est TOUT !
A savoir que :
Pour un Modele on a plusieurs Tailles, plusieurs Articles, et leurs Prix
<?php
error_reporting(E_ALL);
$host = \"localhost\";
$user = \"root\";
$mdp = \"\";
$base = \"NajetBoutique\";
$link = mysql_connect($host,$user,$mdp) or die(mysql_error());
$cnx = mysql_select_db($base,$link) or die(mysql_error());
$mag_ID = 1;$query (\"SELECT DISTINCT mod_ID FROM articles WHERE mag_ID '$mag_ID'\")or die(mysql_error());
$req = mysql_query($query,$link);
while($tab = mysql_fetch_assoc($req)){
$mod_ID = $tab['mod_ID'];
echo'';
echo'<table width="35%" cellspacing="0" cellpadding="0">';
$query1 =(" SELECT DISTINCT mod_Nom FROM modeles WHERE mod_ID = '$mod_ID'");
$req1 = mysql_query($query1);
$n = mysql_num_rows($req1);
for($i=0; $i<$n; $i++){
echo'----
';
$tab1 = mysql_fetch_assoc($req1);
$mod_Nom = $tab1['mod_Nom'];
echo', '.$mod_Nom.'</td>';
$query2=(\"SELECT DISTINCT t.taille_Nom
FROM tailles AS t, articles AS a, liaisonArticlesTailles AS LAT WHERE LAT.mag_ID a.art_ID AND LAT.taille_ID t.taille_ID
AND a.mod_ID ='$mod_ID'\") or die (mysql_error());
$req2 = mysql_query($query2);
while($tab2 = mysql_fetch_assoc($req2)){
$taille_Nom = $tab2['taille_Nom'];
echo''.$taille_Nom.', ';
}
echo'';
}
$query3=(\"SELECT DISTINCT a.art_Nom, LAT.prixUnitaireArticle
FROM tailles AS t, articles AS a, liaisonArticlesTailles AS LAT WHERE LAT.mag_ID a.art_ID AND LAT.taille_ID t.taille_ID
AND a.mod_ID ='$mod_ID'\") or die (mysql_error());
$req3=mysql_query($query3);
while($tab3 = mysql_fetch_assoc($req3)){
$art_Nom = $tab3['art_Nom'];
$prixU = $tab3['prixUnitaireArticle'];
echo'----
';
echo''.$art_Nom.', ';
echo''.$prixU;
echo'<form action="" method="post">';
echo'<select><option value="0">0</option> <option value="1">1</option><option value="2">2</option><option value="3">3</option></select>';
echo'</form>';
echo', ';
echo'';
}
echo'
';
echo'</td>';
echo'<td class="separTable"> </td>';
}
mysql_close();
?>
</tr></table>
</html>
J'AI PAS vRAIMENT CE QUE JE VEUX !!
Mais je m'avoue compètement BATTUE !!!!!je Craque !!!!
mon AFFICHAGE :
__________________________________________
|Modele A | taille 1 | taille 2| taille 3 |
|_________________________________________| A Savoir que les prix sont les Bons mais pas les tailles
| | | | | ( cad
|Article 1| 2euros | | |
|_________________________________________| normalement pour article 1 - 4 euros appartient a taille2
|Article 1| 4euros | | | artilce 1 - 8euros " " " taille3
|_________________________________________| article 2 - 12euros appartient a taille2
|Article 1| 8euros | | | article 2 - 19 euros appartient a taille3
|_________________________________________|
|Article 2| 3euros | | |en Fait il n'y a que pour taille1 que les prix sont correct
|_________________________________________|
|Article 2| 12euros | | |
|_________________________________________|
|Article 2| 19euros | | |
|_________________________________________|
__________________________________________
|Modele B | taille 1 | taille 2| taille 3 |
| | | | | normalement pour article 3 - 14 euros appartient a taille2 |
|_________________________________________| article 3 - 17 euros appartient a taille3
|Article 3| 8euros | | |
|_________________________________________| article 4 - 14 euros appartient a taille2
|Article 3| 14euros | | | article 4 - 19 euros appartient a taille3
|_________________________________________| en Fait il n'y a que pour taille1 que les prix sont correct
|Article 3| 17euros | | |
|_________________________________________|
|Article 4| 4euros | | |
|_________________________________________|
|Article 4| 14euros | | |
|_________________________________________|
|Article 4| 19euros | | |
|_________________________________________|
Merci Beaucoup pour Votre AIde Que J'attends avec Impatience
D'après moi : Problemes dans mes Boucles et requete de tables jointes
sans utiliser les mots clés des jointures (mais j'ai beaucoup de mal a comprendre )
Solutions : doublons a éliminerrequete a amelioré avec motclé : joint
Je Suis sur le meme code depuis plus de 3 semaines et je suis auto didacte
Et malheureusement je n'ai pas d'Amies ds ce domaine
Mais là depuis quelle que temps je craque car je n'arrive pas avancer d'une ligne et j'espère que vos réponses me remotiveront.
Voila je vous est tout dis j'espère que c'est asssez clair !!!
Merci beaucoup pour votre aide