Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Drzewo z MySQL metodą trawersji.
sanneo
post
Post #1





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 15.01.2008
Skąd: Warszawa

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


Witam wszystkich

Przeczytałem pewien artykuł http://www.sitepoint.com/article/hierarchical-data-database

Niestety nie opisuje jak poradzić sobie z typową sytuacją wielopoziomowego menu w serwisie.

Mam dane w takim formacie:

-message1
--message11
--message12
-message2
--message21
--message22
---message221
---message222
----message2221
----message2222
-----message22221
-----message22222
----message2223
---message223
-message3
--message31
---message311
---message312
---message313
--message32
-message4
--message41
--message42
-message5
--message51
--message52

Chciałbym wyświetlić tylko to:

-message1
-message2
--message21
--message22
---message221
---message222
----message2221
----message2222
-----message22221
-----message22222
----message2223
---message223
-message3
-message4
-message5

Dlatego, że wybrałem pozycję menu:

-----message22221

Macie jakiś pomysł jak to osiągnąć korzystając ze struktury bazy danych opisanej w artykule?

Z góry dziękuję.

Pozdrawiam.

Mariusz
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
sanneo
post
Post #2





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 15.01.2008
Skąd: Warszawa

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


dr_bonzo, nie pomogłeś mi w ogóle, ale za to sie wzburzyłeś...

Jeśli czytałeś artykuł do którego link podałem to możesz wywnioskować, że nie chodzi o to, że ktoś napisał coś w książce że tak ma być lub nie ma być, chodzi o to, aby drzewo działało optymalnie i możliwie najmniej obciążało bazę danych i procesy PHP.

Połączyłem sobie parent_id z ta metodą z linka, który podałem i osiągnąłem taki efekt jak potrzeba, ale z wydajnością gorzej, bo na każdą podgałąź wychodzi dodatkowe zapytanie SQL.

Czyli nie satysfakcjonuje mnie takie rozwiązanie.

Ciesze się, że to, że chwile pomyślałeś nad tym, niestety bez efektu, tak jak i ja.

Jeśli znajdziesz rozwiązanie problemu, który opisałem w sposób optymalny jak napisałem, to proszę daj znać.

Na pewno takie rozwiązanie przyda się niejednej osobie.

@Zyx, link który podałeś bazuje na rozwiązaniu do którego link podałem w pierwszym poście.

Pozdrawiam.

Mariusz (sanneo)

Ten post edytował sanneo 2.11.2009, 16:51:32
Go to the top of the page
+Quote Post

Posty w temacie


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: 27.12.2025 - 13:00