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?? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 4 Dołączył: 3.03.2008 Ostrzeżenie: (0%)
|
Możesz zrobić to na 2 sposoby, wyciągając najpierw kategorie i później do nich zdjęcia:
lub ciągnąć wszystko razem i w php sobie rozbić
jedno i drugie powinno działać poprawnie, chociaż lepszym wyjściem jest 2 opcja ponieważ ma tylko jedno zapytanie do bazy |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 92 Pomógł: 0 Dołączył: 6.05.2009 Skąd: warszawa Ostrzeżenie: (0%)
|
Dziekuje bardzo:) Zaraz bede probowala:)
|
|
|
|
Post
#4
|
|
|
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 Przepraszam, źle przeczytałem. Ten post edytował sowiq 6.05.2009, 11:38:22 |
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 4 Dołączył: 3.03.2008 Ostrzeżenie: (0%)
|
@sowiq,
Potrafisz czytać ze zrozumieniem ? Napisałem na końcu, że drugie rozwiązanie jest lepsze. Co do join, to niby co jest w 2 zapytaniu ? |
|
|
|
Post
#6
|
|
|
Grupa: Zarejestrowani Postów: 1 890 Pomógł: 339 Dołączył: 14.12.2006 Skąd: Warszawa Ostrzeżenie: (0%)
|
Przepraszam, źle przeczytałem 2. sposób.
|
|
|
|
Post
#7
|
|
|
Grupa: Zarejestrowani Postów: 92 Pomógł: 0 Dołączył: 6.05.2009 Skąd: warszawa Ostrzeżenie: (0%)
|
A jak zmodyfikowac ten kod:
<?php $kategorieZdjeciaSql = mysql_query('select k.nazwa, z.* from Kategorie k inner join Zdjecia z on k.id = z.id_kategorii order by k.nazwa asc'); $kategoria = null; while($kategorieZdjecia = mysql_fetch_assoc($kategorieZdjeciaSql )) { if($kategoria != $kategorieZdjecia['nazwa']) { $kategoria = $kategorieZdjecia['nazwa']; echo $kategorieZdjecia['nazwa'] . '<br>'; } echo $kategorieZdjecia['sciezka'] . '<br>'; } ?> Aby rowniez wyswietlalo nazwy kategorii do ktorych nie sa dodane zadne zdjecia? A jak zmodyfikowac ten kod: <?php $kategorieZdjeciaSql = mysql_query('select k.nazwa, z.* from Kategorie k inner join Zdjecia z on k.id = z.id_kategorii order by k.nazwa asc'); $kategoria = null; while($kategorieZdjecia = mysql_fetch_assoc($kategorieZdjeciaSql )) { if($kategoria != $kategorieZdjecia['nazwa']) { $kategoria = $kategorieZdjecia['nazwa']; echo $kategorieZdjecia['nazwa'] . '<br>'; } echo $kategorieZdjecia['sciezka'] . '<br>'; } ?> Aby rowniez wyswietlalo nazwy kategorii do ktorych nie sa dodane zadne zdjecia? Ten post edytował AniaR 6.05.2009, 12:17:17 |
|
|
|
Post
#8
|
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 4 Dołączył: 3.03.2008 Ostrzeżenie: (0%)
|
tak ?:
Ten post edytował kirex 6.05.2009, 12:55:31 |
|
|
|
Post
#9
|
|
|
Grupa: Zarejestrowani Postów: 92 Pomógł: 0 Dołączył: 6.05.2009 Skąd: warszawa Ostrzeżenie: (0%)
|
Dolklanie tak (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) jestes THE BEST (IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif)
|
|
|
|
![]() ![]() |
|
Aktualny czas: 27.12.2025 - 02:53 |