![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 26.11.2005 Ostrzeżenie: (0%) ![]() ![]() |
Mam następujący problem:
Struktura mojej strony ma charakter drzewiasty o dowolnym zagnieźdzeniu (każdy element czymkolwiek by nie był posiada zapisaną wartość rodzica). Wszystkie elementy znajdują się w bazie danych (MySQL). Najprostrzym sposobem (co nie znaczy że dobrym) jest zrobienie pęteli w pętli ... w pętli gdzie każda pętla dostaje Id rodzica i szuka potomstwa a następnie każde potomstwo szuka swego potomstwa. Ma to sporo wad: baza danych jest 'atakowana' ogromną ilością SELECTów, po drugie takie zapętlenie jest skończone a jak pisałem, chciałbym uzyskać site map dla dowolnego zagnieżdzenia. Nie oczekuje że ktoś napisze mi cały skrypt ale może ktoś chętnie podzieli się jakaś koncepcją, z góry dziękuję. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 135 Pomógł: 0 Dołączył: 30.09.2005 Skąd: k-rk Ostrzeżenie: (0%) ![]() ![]() |
takie zapetlanie nie musibyc skończone, zwia to rekurencją, ale rzeczywiscie ilośc SELECT(ów) bedzie duza, rozwiazaniem moze być zapisanie struktury do pliku (cache-owanie) i zmienieanie tego pliku tylko w przypadku zmainy zawartości, tj dodanieu bądz usunieciu czegoś ze struktur. Przydatne moze być "SELECT COUNT(*) FROM struktura"
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 7.10.2025 - 09:44 |