|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : septembre 2003 Messages : 22 ![]() |
Bonjour,
Je ne suis pas un pro du SQL! J'utilise MySQL pour travailler avec PhP. Je voudrais faire une requête entre 2 tables de ma base de données. Voici comment je m'y prend! Code :
Ce que je veux faire c'est d'afficher les categories de mes ressources. Par exemple, mod_ressources possède 20 enregistrements avec une certaines categories. Dans ma page PHP. Je veux afficher en en-tête ma categories et afficher les ressources que contient cette catégories. Est-ce que je suis mieux d'y aller avec 2 requêtes distincte SQL ou je peux procéder avec MySQL pour ce traitement! Merci de votre aide. bonne journée! |
||
|
|
00
|
|
|
#2 | ||
|
Membre régulier
![]() Inscription : mars 2002 Messages : 206 ![]() |
Si j'ai bien compris ta question tu dois avoir un résultat du type :
Groupe 1 --> Machin Groupe 1 --> Truc Groupe 1 --> Bidule Groupe 2 --> chose Groupe 2 --> ... Or tu ne veux afficher que Groupe 1 : - Machin - Truc - Bidule Groupe 2 : - chose - ... Tu dois faire un GROUP BY : Code :
|
||
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : septembre 2003 Messages : 22 ![]() |
Un grand merci. Ca marche parfaitement.
bye! |
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : septembre 2003 Messages : 22 ![]() |
Bon, Je pensais que c'était résolu mon problème, mais non, la je me retrouve avec seulement 1 enregistrement par catégories.
Qu'est-ce qui n'est pas correct dans ma requete? J'ai penser que c'était ma clause WHERE, mais ca ne semble pas être le cas. Merci de m'aider. |
|
|
00
|
|
|
#5 |
|
Membre régulier
![]() Inscription : mars 2002 Messages : 206 ![]() |
Dsl j'ai repensé aprés que ça ne devait pas être ça...
Ce que tu peux faire c'est une requete sur ta table catégorie avec le GROUP BY pour n'avoir chaque catégorie qu'une fois, puis tu lis ton jeu d'enregistrement (boucle), et tu mets le id l'enregistrement courant lu en paramètre de ta requete SELECT .... WHERE categorie.id='$id_courant'. Dsl c'est pas évident à expliquer sans code... |
|
|
00
|
|
|
#6 | ||
|
Invité de passage
![]() Inscription : septembre 2003 Messages : 22 ![]() |
Je ne suis pas sur de très bien comprendre ce que tu veux dire.
Je fais une requête pour avoir mes catégories du genre et j'y fait une boucle ensuite, dans ma boucle j'y fait quelque chose du genre : Code :
Merci, bye! |
||
|
|
00
|
|
|
#7 |
![]() ![]() Inscription : juin 2003 Messages : 4 893 ![]() |
ah ok je viens de comprendre ton problème
le mieux c'est de faire 1 seule grosse requête c'est beaucoup plus rapide et ensuite dans ton code php tu utilises una variable pour savoir si tu as changé de catégorie inspire toi de ca : http://www.developpez.net/forums/viewtopic.php?p=1114910#1114910 |
|
|
00
|
|
|
#8 | ||
|
Invité de passage
![]() Inscription : septembre 2003 Messages : 22 ![]() |
mathix, je ne sais pas ou tu as vue une seule grosse requete dans le lien que tu as inscrits. J'ai vraiment rien compris dans ce qui a été traiter dans le sujet de discussion. D'après ce que j'ai compris, ca revient au même que ce que Vince m'a parlé!
J'ai essayer ceci : Code :
J'ai chercher aussi du coter du DISTINCT, mais ca ne semble pas donner le resultat que je recherche aussi. Merci de votre aide. |
||
|
|
00
|
|
|
#9 |
![]() ![]() Inscription : juin 2003 Messages : 4 893 ![]() |
ce que j'appelle "grosse requête" c'est la 1ère requête que tu as proposé
ce que tu fais c'est récupérer toutes les ressources et les catégories avec un tir par catégories en suite tu fais une seule boucle "while" et tu testes si tu es encore dans la même catégorie que précédemment à l'aide du code que j'ai proposé |
|
|
00
|
|
|
#10 |
|
Invité de passage
![]() Inscription : septembre 2003 Messages : 22 ![]() |
Ok, mais je dois etre trop debutant parce que je comprends pas a quoi ton lien s'applique a moi, j'ai essayer et c'est loin de fonctionner!
Ca me prendrais 2 boucles while. - une pour avoir la liste des categories.. - et l'autre pour verifier si la ressources contient la categories entk, du moin il me semble que ca devrait être comme ca non? Parce que sinon, je comprend vraiment pas! Merci d'eclairer mon esprit. |
|
|
00
|
|
|
#11 | ||
![]() ![]() Inscription : juin 2003 Messages : 4 893 ![]() |
non en fait tu fais une seule requete (et donc une seule boucle while) où tu récupère la resosurce et le service associé
par exemple ta requête retourne ca : Code :
|
||
|
|
00
|
|
|
#12 |
|
Invité de passage
![]() Inscription : septembre 2003 Messages : 22 ![]() |
ok, merci, ca la fonctionner.
bye |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com