![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 14.06.2004 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Robię katalog www oparty o MySQL. Chcę zrobić w nim podział na kategorie i podkategorie (jak w większości portali).
Moja tabela "kategorie" w bazie danych ma następujące pola: id, nazwa, level. Kiedy level=0 kategoria wyświetlana jest jako kategoria główna, a jeżeli level=1 kategoria wyświetlana jest jako podkategoria. Pytanie: Jak mogę przyporządkować wybrane kategorie do odpowiedniej kategorii głównej ![]() Chodzi mi o to, żeby uzyskać mniej więcej coś takiego: > Komputery --> Hacking --> Linux > Sport --> Piłka nożna --> Igrzyska (..) Mam nadzieję, że wszystko jest jasne ![]() Pomóżcie, bo cały dzień nad tym siedzę i nic nie wychodzi... -------------------- windows nie jest wirusem... wirusy coś robią :)
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 118 Pomógł: 5 Dołączył: 9.07.2003 Skąd: Wołów/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
hmmmm, może tak:
np. id=1, nazwa=Komputery, level=0, catid=0 i teraz robimy podkategorie id=2, nazwa=Hacking, level=1, catid=1 Dodałem pole catid. W chwili gdy catid = 0 i level = 0, to wiemy, że jest to kategoria glowna. Jeżeli level = 1 i catid = 1, to wiemy, że jest to sybkategoria kategorii o id 1 - catid = id rekordu ktory jest kategoria glowna ps. mozliwe ze nagmatwalem, jezeli nie zrozumiesz to napisz ze nie rozumiesz ![]() ![]() |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 14.06.2004 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
ok, rozumiem mniej więcej wszystko to, co mam zrobić w bazie danych i na jakiej zasadzie to będzie działało.
Ale przejdźmy do php. Otórz co mam zrobić w pliku *.php, żeby podkategorie wyślietlały mi się przy (lub pod) odpowiedniej kategorii głównej. Mógł byś napisać jakąś przykładową funkcję lub coś w tym rodzaju... ![]() -------------------- windows nie jest wirusem... wirusy coś robią :)
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 118 Pomógł: 5 Dołączył: 9.07.2003 Skąd: Wołów/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Napiszę ci coś najprostszego, według czego napiszesz swoje.
pisane na zywca ![]() |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 657 Pomógł: 2 Dołączył: 15.08.2003 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
-------------------- |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 14.06.2004 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Vengeance -> dzięki za linka
essEy -> użyłem tego Twojego skryptu i wszysko jest ok, tylko są jakieś problemy z pierwszą pętlą WHILE. W tej wersji którą mi dałeś wyskakuje błąd: Cytat Warning: Supplied argument is not a valid MySQL result resource in c:\apache\sciezka_do_pliku\cat.php on line 15 .Zrobiłem jeszcze drugą wersję tego skryptu (m.in. dodałem template'y, i pare zmian ale mechanizm działania jest ten sam) i niby wszystko gra, tylko pierwsza pętla WHILE nie działa, tzn. wyświetla tylko pierwszą kategorię a mam ich kilka (druga while jest ok). Co to może być? essEy był bym Ci bardzo wdzięczny za pomoc ![]() Pozdrawiam -------------------- windows nie jest wirusem... wirusy coś robią :)
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 31.10.2004 Ostrzeżenie: (20%) ![]() ![]() |
Hmm...tak się zastanawiam po co wam kolumna level...
tylko problemy moze stwarzać przy tworzeniu takiego drzewka ze strony www ![]() ja zawsze uzywałem tylko : id | name | id_root | przy czym dla pierwszego poziomu id_root = null; potem przy tworzeniu takiego drzewka... wystarczyły insert into table ( name, id_root) values( $name, $id_root ) gdzie $name ręcznie a id_root z linka ...jako parametr ![]() to samo przy listowaniu drzewka.. select *,id from drzewko where id_root = null a gdy kliknałem na liścia to pytał baze : select *,id from drzewko where id_root = $id, gdzie $id z poprzedniego selecta ![]() wydaje mi sie ze to łątwiejsze ![]() |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 09:14 |