Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wyświetlanie produktu w kategoriach nadrzędnych
netvalue
post
Post #1





Grupa: Zarejestrowani
Postów: 199
Pomógł: 2
Dołączył: 9.06.2008

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


Witam,

Od dłuższego czasu zastanawiam się nad rozwiązaniem aby wyświetlić produkt w nadrzędnych kategoriach do których należy kategoria w której jest przypisany.


NP. drzewo

Kategoria A (id:1,parent_id:0)
-kategoria b (id:8,parent_id:1)
-kategoria c (id:9,parent_id:1)
-kategoria cc (id:10,parent_id:9)


Produkt

produkt (id:1, category_id:10)

Chciałbym aby ten produkt wyświetlał się po wejściu Kategoria A, kategoria B i oczywiście kategoria CC
Go to the top of the page
+Quote Post
Uriziel01
post
Post #2





Grupa: Zarejestrowani
Postów: 307
Pomógł: 37
Dołączył: 9.11.2010
Skąd: Zielona Góra

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


Możesz albo pobrać wszystkie kategorię których poziom jest wyższy od aktualnej a potem w pętli rekursywnej sprawdzać czy zawiera kategorię nadrzędne do kategorii szukanej, oczywiście w każdej iteracji pętli jeżeli znajdziesz jakąś kategorię nadrzędną robisz dla niej dokładnie taką samą pętlę. Potem mając już gotową tablicę zawierającą id każdej interesującej nas kategorii przy wyciąganiu produktów z bazy robisz WHERE category_id IN (...) . Niestety przy naprawdę dużych tablicach można tak dostać zadyszki. Lub użyć czegoś sprytniejszego, technik jest całkiem sporo, ogólnie hasło po którym możesz ich szukać to 'Storing Hierarchical Data in a Database'.

Ten post edytował Uriziel01 27.02.2012, 12:04:34
Go to the top of the page
+Quote Post

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: 28.09.2025 - 14:13