Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Odczyt danych z bazy., Odczyt danych z 2 powiązanych ze sobą tabel.
AniaR
post
Post #1





Grupa: Zarejestrowani
Postów: 92
Pomógł: 0
Dołączył: 6.05.2009
Skąd: warszawa

Ostrzeżenie: (0%)
-----


Witam,

Majac 2 tebele w bazie:

Kategorie (id, nazwa)
Zdjecia (id, id_kategorii, sciezka)

Chcialabym odczytac dane z tabel by wyswietlaly sie nastepujaco:

JAKAS NAZWA KATEGORII 1
zdjecie1
zdjecie2
..
zdjecieN

JAKAS NAZWA KATEGORII 2
zdjecie1
zdjecie2
..
zdjecieN


......

JAKAS NAZWA KATEGORII N
zdjecie1
zdjecie2
..
zdjecieN



Zrobilam to w ten sposob ze najpierw wyswietlam nazwy wsyztskich kategorii:
JAKAS NAZWA KATEGORII 1
JAKAS NAZWA KATEGORII 2
...
JAKAS NAZWA KATEGORII N

a po nacisnieciu na ktoras z nazw, w adescie url przekazuje zmienna z id tej kategorii i nastepnie pobieram z bazy zdjecia ktore spelniaja warunek: id_kategorii = $id
W ten sposob wyswietlam zdjecia z danej kategorii. Jednak wyswietlam wtedy tylko jedna grupe zdjec z jednej kategorii.

Jednaj mi zalezy by wyswietlic na raz wszytskie zdjecia ktore sa w bazie posegregowane kategoriami, a dodatkowo nad kazda z grup zdjec nazwe kategori do ktorej nalezą.
Czy ktos moze dac mi wskazowke jak ulozyc pytanie badz pytania by wyswietlic dane w taki sposob jaki potrzebuje??
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
sowiq
post
Post #2





Grupa: Zarejestrowani
Postów: 1 890
Pomógł: 339
Dołączył: 14.12.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


@kirex,
jeśli już chcesz pomagać, to rób to dobrze.

1. Twój pierwszy sposób pokazuje jedną z gorszych praktyk, jakie można stosować przy zabawie z SQL. Uzależniasz ilość zapytań od ilości rekordów w bazie. Jeśli w tabelce 'Kategoria' będziesz miał 1k rekordów, to 'Zdjęcia' wykonasz 1k zapytań. Jeśli będzie tam 100k rekordów, to liczba zapytań będzie odpowiednio większa. Oczywiście w tym przypadku zapewne nie będzie takiej ilości danych, ale trzeba się wystrzegać powielania złych nawyków.

2. Ten sposób jest już o wiele lepszy, ale też nie do końca poprawny. Dużo lepszym pomysłem jest zastosowanie JOIN'ów - wykonują się one szybciej niż iloczyny kartezjańskie, które zastosowałeś.
Przepraszam, źle przeczytałem.

Ten post edytował sowiq 6.05.2009, 11:38:22
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 27.12.2025 - 09:08