[PHP][MySQL] Drzewo kategorii |
[PHP][MySQL] Drzewo kategorii |
24.08.2018, 17:56:29
Post
#1
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 1 Dołączył: 11.07.2018 Ostrzeżenie: (0%) |
Na swojej stronie próbuję wprowadzić kategorie/podkategorie dla artykułów. Mam np. takie coś:
Książki -- Informatyka ---- Programowanie ---- Bazy danych -- Motoryzacja ---- Samochody ---- Motory stworzyłem więc tabele 'cats', a w niej: `CAT_ID` - AUTO_INCREMENT `CAT_NAME` - VARCHAR (48) `CAT_PARENT` - INT(1) `CAT_PATH` - VARCHAR (48) Przykładowe uzupełnienie wygląda tak: 1 | Informatyka | 0 | informatyka 2 | Programowanie | 1 | programowanie 3 | Motoryzacja | 0 | motoryzacja 4 | Samochody | 3 | samochody Gdzie jeśli CAT_PARENT == 0 to oznacza to, że jest to kategoria główna. Mam jeszcze kategorię 'KSIĄŻKI' a w niej: KSIAZKA_ID | KSIAZKA_NAZWA | KSIAZKA_CAT | KSIAZKA_OPIS i przykładowe uzupełnienie: 1 | Programowanie PHP | 2 | Opis 2 | O samochodach | 3 | Opis 3 | Inna o samochodach | 3 | Opis No i teraz na stronie głównej wyświetlam sobie WSZYSTKIE książki - zwykłe zapytanie SELECT i w pętli while wyświetlam wszystkie książki. Mam też wyświetlone wszystkie kategorie z bazy danych. Po wejściu w kategorie główną (np. Informatyka) wyświetlam (jeśli istnieją) wszystkie podkategorie - działa OK. Pod podkategoriami próbuję zrobić listę WSZYSTKICH książek, które dotyczą kategorii INFORMATYKA, a więc wszystkich podkategorii których rodzicem jest właśnie INFORMATYKA. Jak powinno wyglądać takie zapytanie? W miarę optymalne żeby było bo tych książek trochę mam, a nie chcę żeby mi muliła strona. Czytałem o nested set - nie podoba mi się to zupełnie i nie rozumiem tego i nie chcę nawet zrozumieć. Odpada. Czytałem też o drzewach IP, ale też wolałbym jakoś inaczej to zrobić. Na stronie najgłębsze zagęszczenie jest do 3 poziomu więc co będzie najlepszym rozwiązaniem? Najlepiej by było żeby ktoś pomógł mi skonstruować zapytanie do tego powyżej. Z góry dzięki. |
|
|
24.08.2018, 18:17:00
Post
#2
|
|
Grupa: Zarejestrowani Postów: 281 Pomógł: 0 Dołączył: 10.01.2014 Ostrzeżenie: (0%) |
Proszę tu masz skrypt kategorii
Ten skrypt napisałem sam na swojej stronie w przyszłości dodam podkategorie a to są kategorię bez spod jkategorii tylko go przeedytuj i daj swoje kategorie itp Ten post edytował pawel06281990 24.08.2018, 18:17:37 |
|
|
24.08.2018, 18:22:03
Post
#3
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 1 Dołączył: 11.07.2018 Ostrzeżenie: (0%) |
... przeczytaj mój post... ale dzięki za chęci
|
|
|
24.08.2018, 18:42:44
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 365 Pomógł: 1114 Dołączył: 30.08.2006 Ostrzeżenie: (0%) |
-------------------- |
|
|
24.08.2018, 19:07:24
Post
#5
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 1 Dołączył: 11.07.2018 Ostrzeżenie: (0%) |
viking, wolałbym jakieś najprostsze na świecie rozwiązanie... teraz znalazłem takie coś:
... where CAT_ID = IN.. co o tym myślicie? |
|
|
Wersja Lo-Fi | Aktualny czas: 28.03.2024 - 14:38 |