Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] jak zrobić taką ścieżkę nawigacyjną ?
jolam
post
Post #1





Grupa: Zarejestrowani
Postów: 259
Pomógł: 0
Dołączył: 12.07.2009

Ostrzeżenie: (10%)
X----


Hejeczka (IMG:style_emoticons/default/smile.gif)

Proszę powiedzcie mi jak zrobić taką ścieżkę nawigacyjną jak na stronie:
http://merlin.pl/albumy-krajoznawcze/brows...ory/1,1652.html
chodzi o ten pasek z odnośnikiami pod menu:<h2 class="categoryTitle">Książki > Albumy > Krajoznawcze</h2>Prosiłabym o wskazówki jak to kroczek po kroczku zrobić? Jakiś zarys takiego malutkiego projektu, bo nie wiem jak się za to zabrać. A może znacie jakieś strony z tutorialami na ten temat?

pozdrawiam Jola
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




wczytujesz kategorie, patrzysz jakich ona ma rodzicow i doklejasz rodzicow. Czego w tym nie rozumiesz?
Go to the top of the page
+Quote Post
jolam
post
Post #3





Grupa: Zarejestrowani
Postów: 259
Pomógł: 0
Dołączył: 12.07.2009

Ostrzeżenie: (10%)
X----


nospor to potrafię zrobić. Ale problem mam z tym, że menu może być kilku poziomowe czyli są jeszcze dziadkowie i pradziadkowie (IMG:style_emoticons/default/smile.gif) Podpowiesz jak to sprytnie zrobić? Chodzi mi o algorytm, jak to odczytywać z bazy. Mam id_rodzica przy każdej kategorii. Ale nie wiem jak to bez rekurencji zrobić, a rekurencja ponoć jest zła dla baz danych?

pozdrawiam serdecznie
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
nospor to potrafię zrobić. Ale problem mam z tym, że menu może być kilku poziomowe czyli są jeszcze dziadkowie i pradziadkowie
Mowiac "rodzice" mialem na mysli: tato, dziadek, pradziadek... troche wiecej oglady w nazewnictwie informatycznym (IMG:style_emoticons/default/winksmiley.jpg)

Cytat
Mam id_rodzica przy każdej kategorii. Ale nie wiem jak to bez rekurencji zrobić, a rekurencja ponoć jest zła dla baz danych?
To zrob normalną strukture tabeli przystosowaną do struktury drzewiastej. w necie jest tego masa.
Go to the top of the page
+Quote Post
jolam
post
Post #5





Grupa: Zarejestrowani
Postów: 259
Pomógł: 0
Dołączył: 12.07.2009

Ostrzeżenie: (10%)
X----


nospor ja mam taką strukturę drzewiastą - mam drzewka IP (IMG:style_emoticons/default/smile.gif) Tylko najzwyczajniej w świecie nie wiem jak jej efektywnie użyć w tym celu o którym Ci wcześniej pisałam. Czy byłbyś tak miły i powiedział mi jak mam się odwoływać do tej bazy z drzewkiem ip, żeby taką ścieżkę nawigacyjną zrobić? Bardzo Cię o to proszę

(IMG:style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
dr_bonzo
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


Przeciez to trywialne. Drzewko IP, masz strone o ID = '1.2.3.4'
To znasz przodkow tej strony, sa to '1', '1.2', '1.2.3', dolaczasz bierzacy obiekt (1.2.3.4) i generujesz HTML.
Go to the top of the page
+Quote Post
jolam
post
Post #7





Grupa: Zarejestrowani
Postów: 259
Pomógł: 0
Dołączył: 12.07.2009

Ostrzeżenie: (10%)
X----


dr_bonzo faktycznie masz rację!
Tylko przodkowie to (ID) "1", "2", "3", a bieżący obiekt to "4" Oczywiście jeśli IP = "1.2.3.4"

Dziękuję!

Jola

A powiesz mi również jak pobierać całe drzewo z bazy nie używając rekurencji? Bo teraz sprawdzam rekurencyjną funkcją czy najstarszy obiekt ma dzieci, jeśli ma to je wypisuje i dla każdego z nich wywołuje się ta sama funkcja rekurencyjna i tak do końca. Czy to bez rekurencji się da?

Pozdrawiam Jola
Go to the top of the page
+Quote Post
nowotny
post
Post #8





Grupa: Zarejestrowani
Postów: 875
Pomógł: 122
Dołączył: 2.02.2008

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


Cytat(jolam @ 14.09.2009, 12:50:55 ) *
Czy to bez rekurencji się da?

Nie da się... Generalnie są 3 czy 4 "standardy" przechowywania danych hierarchicznych w bazie danych... każda ma swoje wady i zalety... Wbrew pozorom jest to całkiem skomplikowana sprawa jeśli się chce w ten sposób obsługiwać tysiące rekordów... do prostego menu metoda rekurencyjna nie jest taka zła... Sam to ostatnio reserczowałem i mogę ci podać linki do dobrych źródeł ale tylko po angielsku...
Go to the top of the page
+Quote Post
dr_bonzo
post
Post #9





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


Cytat(jolam @ 14.09.2009, 12:50:55 ) *
dr_bonzo faktycznie masz rację!
Tylko przodkowie to (ID) "1", "2", "3", a bieżący obiekt to "4" Oczywiście jeśli IP = "1.2.3.4"

Cos krecisz.
Pierwszy poziom, u korzenia ma oznaczenia jednoczlonowe oznaczenia ("1", "2", "1200",..).
Kolejny poziom ma dwuczlonowe oznaczenia (1.1, 1.2, 2.1, 2.2, 1200.1, 1200.2, 1200.3 )
itd, 1.1.1, 1.1.2, 1.1.3.

Wiec przodkami od "1.2.3.4" sa, tak jak mowilem, "1", "1.2", "1.2.3" .

Go to the top of the page
+Quote Post
jolam
post
Post #10





Grupa: Zarejestrowani
Postów: 259
Pomógł: 0
Dołączył: 12.07.2009

Ostrzeżenie: (10%)
X----


nowotny podaj te linki chętnie przeczytam

dr_bonzo to ja nie wiem jaką metodę drzewek IP ty znasz. Ale chyba ci się ip z id pomyliło.
Id nie ma kropki więc nie może być "1.2.3". Ale jeśli rekord ma IP "1.2.3" to
id | ip | depht
1 1 0
2 1.2 1
3 1.2.3 2

Po prostu pomyliłeś sobie ID z IP

pozdrawiam Jola

Go to the top of the page
+Quote Post
phpion
post
Post #11





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




(IMG:style_emoticons/default/laugh.gif) hehe, widzisz dr_bonzo, jeszcze będziesz pouczany (IMG:style_emoticons/default/smile.gif) przecież koleżanka tak jasno i klarownie wszystko tłumaczy...
Go to the top of the page
+Quote Post
dr_bonzo
post
Post #12





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


@phpion (IMG:style_emoticons/default/biggrin.gif)

@jolam: (Twoje) ID w przypadku drzewek IP NIC nie znaczy, bo rodzice moga miec IDki 123123, 34532, 123123 i 3 (a nie 1, 2, 3, tak jak to przyjelas). Wazne jest IP (ktore pierwotnie nazwalem ID, bo mozna to zrealizowac z samym IP, bez ID).

I przeciez nie wyznaczysz rodzicow na podstawie ID, tylko IP - co poparlem przeciez przykladem:

Cytat
Przeciez to trywialne. Drzewko IP, masz strone o ID = '1.2.3.4'
To znasz przodkow tej strony, sa to '1', '1.2', '1.2.3', dolaczasz bierzacy obiekt (1.2.3.4) i generujesz HTML.


gdzie mozna go zrozumiec jesli popatrzysz na wartości adresów (a nie na to nieszczesne "ID").
Go to the top of the page
+Quote Post
nowotny
post
Post #13





Grupa: Zarejestrowani
Postów: 875
Pomógł: 122
Dołączył: 2.02.2008

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


http://www.sitepoint.com/article/hierarchical-data-database/
http://dev.mysql.com/tech-resources/articl...hical-data.html
http://www.evolt.org/article/Four_ways_to_...4047/index.html
http://www.alandelevie.com/2008/07/12/recu...ional-database/
http://searchoracle.techtarget.com/tip/0,2...61_mem1,00.html
http://onlamp.com/pub/a/onlamp/2004/08/05/...chical_sql.html

Proponuję przeczytać komentarze do artykułów które je mają... zawierają dużo ciekawych informacji...
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: 23.08.2025 - 19:01