![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 223 Pomógł: 0 Dołączył: 22.03.2003 Ostrzeżenie: (0%) ![]() ![]() |
Mam następującą bazę danych:
1. tabela categories z polami 'name', 'id' oraz 'id_p' name - nazwa kat. id - id kat. id_p - id rodzica, czyli kategoria nadrzędna 2. tabela items z polami 'id', 'id_c' i 'name' name - -||- id - id produktu id_c - id kategorii Mam następujący problem. Produkty są porozrzucane po różnych kategoriach, np mam główną kategorię Oprogramowanie, w niej podkategorie Graficzne, Biurowe, w Graficzne powiedzmy Adobe i Macromedia (teraz to to samo ;>), w Biurowych Microsoft i Lotus. Kiedy klikam na kategorie wyświetlają się wszystkie zawarte w niej produkty + produkty z podkategorii. Np. Klikając na Biurowe otrzymam wszystkie produkty przypisane do Biurowe, jak i do Microsoft i Lotus. Moje pytanie brzmi: Czy można to wyciągnąć jednym zapytaniem tak żebym mógł stosować mysql'owskie "polecenie" LIMIT? Chce dzielić produkty na strony, ale nie mam za bardzo pomysłu jak to zrobić, jeśli wyciągam je kilkoma zapytaniami z kilku kategorii na raz (głowna + wszystkie podrzędne). Proszę o pomoc! :-) |
|
|
![]() ![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 425 Pomógł: 0 Dołączył: 28.05.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Wyciągasz je naraz (główna i podrzędne kategorie) i potem dzielisz na kolejne strony.
Możesz wtedy dać np. według kategorii lub nazwy. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 223 Pomógł: 0 Dołączył: 22.03.2003 Ostrzeżenie: (0%) ![]() ![]() |
tak, fajnie. ale jak je na raz wyciągnąć?! podkategorii może być np. 10 poziomów.
|
|
|
![]() ![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 425 Pomógł: 0 Dołączył: 28.05.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Może stworzyć odzielną tabelę za mapą działów?
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 223 Pomógł: 0 Dołączył: 22.03.2003 Ostrzeżenie: (0%) ![]() ![]() |
niby można i mogę nawet zrobić coś takiego w samym php, ale... nie da się prościej?!
wbrew pozorom to nie jest banalny problem - trzeba by użyć rekurencji w mysql'u jesli takie coś istnieje... Ten post edytował cahe 10.08.2005, 12:11:18 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 23:44 |