![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 127 Pomógł: 3 Dołączył: 22.04.2012 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Cześć, męczę się i męczę i sam chyba już nie wymęczę...
posiadam dwie tabele: categories: id category id_parent (tabela ta tworzy mi drzewo kategorii) ------------------------ 1 główna 0 2 główna_inna 0 3 podkategoria 1 4 podpodkategoria 1 products: id id_cat title text (gdzie id_cat = id tabeli categories) 1 3 produkt opis 2 3 produkt opis 3 4 produkt opis bez problemu sobie pobieram produkty dla konkretnego id z tabeli kategorii (mam zmienną id=3 (3 to numer kategorii) za pomocą której zasysam dane z produktów (produkty przypisane do kategorii, które mają id_cat=3). problem się zaczyna gdy chcę wyświetlić główną kategorię np dostaję dane $id=1 i do niej nie ma żadnych produktów przypisanych ale są przypisane do podkategorii, które należą do id=1. da się to teraz jakoś sklecić sql aby mi wypluł takie dane? czyli produkty dla numeru id, który otrzymujemy np. id=1 oraz jeśli istnieje przypisany numer id_parent to również produkty przypisane do niego. coś takiego zacząłem robić ale niestety - danych jest za dużo powielonych... coś tam idę w dobrym kierunku ale potrzebuje pomocy (IMG:style_emoticons/default/smile.gif) z góry dzięki!
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 127 Pomógł: 3 Dołączył: 22.04.2012 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
dzięki wielkie - taka pomoc mnie motywuje do nauki SQLa (IMG:style_emoticons/default/smile.gif) nie za bardzo rozumiem końcówki tego zapytania ale sobie doczytam - ważne, że to działa.
w tej chwili fajnie mi pokazuje produkty przy wyborze kategorii matki, wszystkie produkty, które są przypisane do dzieci. Jednak nie pokazuje mi już produktów, które są przypisane do dzieci i jeszcze ich dzieci... patrząc na możliwość ustanawiania dowolnie "głębokich" kategorii, którą stworzyłem, zastanawiam się czy nie skopałem bazy na samym początku, czyli błędnie stworzone tabele - chyba, że uratuje mnie sql i można to jakoś rozwiązać... co o tym myślicie? i czy ew. można było lepiej to zrobić? mysql> show tables; +--------------------+ | Tables_in_xxxx | +--------------------+ | admins | | categories | | photos | | products | +--------------------+ mysql> select * from categories; +----+----------------------------------------+-----------+ | id | category | id_parent | +----+----------------------------------------+-----------+ | 1 | Ochrona r?k | 0 | | 2 | Ochrona cia?a | 0 | | 3 | Ochrona przed upadkiem z wysoko?ci | 0 | | 4 | Ochrona g?owy | 0 | | 5 | Ochrona s?uchu | 0 | | 6 | Ochrona oczu i twarzy | 0 | | 7 | Ochrona dr?g oddechowych | 0 | | 8 | Ochrona n?g | 0 | | 9 | Higiena i czysto?? | 0 | | 10 | Wyposa?enie zak?ad?w / narz?dzia gertu | 0 | | 11 | Ochrona PPO? | 0 | | 12 | Pozosta?e artyku?y | 0 | | 31 | podkategoria testowa | 1 | +----+----------------------------------------+-----------+ mysql> select * from products; +----+--------+-------------------+---------------------------------+ | id | id_cat | title | text | +----+--------+-------------------+---------------------------------+ | 39 | 31 | PRODUKT TESTOWY | Opis produktu testowego | | 40 | 31 | PRODUKT TESTOWY 2 | Opis do produktu testowego nr 2 | +----+--------+-------------------+---------------------------------+ mysql> select * from photos; +----+------------+----------------------------------+ | id | id_product | path | +----+------------+----------------------------------+ | 40 | 39 | uploads/rekawice2_1342264999.jpg | | 42 | 39 | uploads/rekawice1_1342265507.jpg | +----+------------+----------------------------------+ |
|
|
![]() ![]() |
![]() |
Aktualny czas: 7.10.2025 - 08:13 |