de principiu este vorba despre cateva tabele in mysql administrate din backend de mine, singura interactiune a vizitatorilor este de a alege in prima faza niste valori (eu m-am gandit la checkboxuri) care reprezinta valorile din una dintre tabele. apoi dupa ce apasa pe un buton, li se afiseaza alte valori din alta tabela, in relatie cu prima.Spre exemplu: Avem tabela "INGREDIENTE", avand randurile "id_ingrediente" (cheie primara si unica) si "denumire_ingrediente" (varchar de 20 sa zicem) si tabela "PREPARATE", cu "id_preparat" (cheie primara si unica) , "denumire_preparat" (varchar de 100) si "id_ingrediente" care este intr-o relatie "mai multi la unu" cu randul similar din prima tabela, deoarece UN preparat poate avea mai multe ingrediente si, totodata, acelasi ingredient poate fi la mai multe preparate. In prima tabela avem o lista de ingrediente (apa, zahar, cafea, oua, etc.). In prima faza vizitatorul alege (bifeaza) niste ingrediente si, la Submit i se genereaza o lista cu preparatele posibile in functie de ingredientele alese .
Va rog sa ma ajutati sunt nou in domeniu:)
vreau un checkbox cu afisare rezultate din tabela diferita
Moderatori: Zamolxe, Moderatori
Re: vreau un checkbox cu afisare rezultate din tabela diferi
cazul tau nu e many to one ci e many to many si de cele mai multe ori ai nevoie de tabela intermediara.
Ca sa iei toate preparatele ce folosesc ingredientele cu id 7, 8 si 9 ar trebui un query de genul: (7, 8, 9 e lista de ingrediente iar 3 de la having e numarul lor)
PS: sper ca nu am gresit caci nu am testat codul.
Cod: Selectaţi tot
Ingrediente
id | name
Preparate
id | name
Intermediar
p_id | i_idCa sa iei toate preparatele ce folosesc ingredientele cu id 7, 8 si 9 ar trebui un query de genul: (7, 8, 9 e lista de ingrediente iar 3 de la having e numarul lor)
Cod: Selectaţi tot
SELECT p.id, p.name
FROM Preparate p
LEFT JOIN Intermediar i
ON p.id = i.p_id
WHERE i.i_id IN (7, 8, 9)
GROUP BY p.id
HAVING COUNT(i.p_id) = 3PS: sper ca nu am gresit caci nu am testat codul.
Re: vreau un checkbox cu afisare rezultate din tabela diferi
hai sa iti zic o faza mai usoara
Faci o tabela cu toate ingredientele si le atribui id-uri 1,2,3,4,5,6,7,......,n
Faci o tabela cu toate preparatele si le atribui id-uri 1,2,3,4,5,6,7,.....,m si ingredientele dupa id de exempplu
Ingrediente: 1 - faina, 2 - lapte, 3 - oua, 4 - zahar, 5 - cacao
Preparat: negresa (id 6) cu ingredientele 1,2,3,4,5....
el cand va selecta negresa ii pui in spate un cod care sa dea explode la coloana ingrediente si din 1,2,3,4,5.... sa faca 1 2 3 4 5 .... iar in afisare nu afisezi id-urile ci ceri din baza de date denumirile...
e mai simplu decat pare din explicatie
Faci o tabela cu toate ingredientele si le atribui id-uri 1,2,3,4,5,6,7,......,n
Faci o tabela cu toate preparatele si le atribui id-uri 1,2,3,4,5,6,7,.....,m si ingredientele dupa id de exempplu
Ingrediente: 1 - faina, 2 - lapte, 3 - oua, 4 - zahar, 5 - cacao
Preparat: negresa (id 6) cu ingredientele 1,2,3,4,5....
el cand va selecta negresa ii pui in spate un cod care sa dea explode la coloana ingrediente si din 1,2,3,4,5.... sa faca 1 2 3 4 5 .... iar in afisare nu afisezi id-urile ci ceri din baza de date denumirile...
e mai simplu decat pare din explicatie
Re: vreau un checkbox cu afisare rezultate din tabela diferi
@moof2010 - esti complet pe langa
Asta s-a cerut:
Deci, aleg ingredientele si vad ce preparate am care contin acele ingrediente.
Tu ai ceva de genu ca aleg preparatu si ii afisez ingredientele (si e cu mult mai ineficienta metoda ta, pe langa faptul ca incalci principiul bazelor de date relationale).
Asta s-a cerut:
In prima faza vizitatorul alege (bifeaza) niste ingrediente si, la Submit i se genereaza o lista cu preparatele posibile in functie de ingredientele alese .
Deci, aleg ingredientele si vad ce preparate am care contin acele ingrediente.
Tu ai ceva de genu ca aleg preparatu si ii afisez ingredientele (si e cu mult mai ineficienta metoda ta, pe langa faptul ca incalci principiul bazelor de date relationale).
Cine este conectat
Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 24 vizitatori
