![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 265 Pomógł: 4 Dołączył: 30.08.2004 Ostrzeżenie: (0%) ![]() ![]() |
Witam, zapisałem dane z bazy w tablicy, która wygląda teraz następująco:
Kod Array ( [0] => Array ( [0] => www [1] => asd [2] => asd [3] => test ) [1] => Array ( [0] => Argania [1] => CapeDun [2] => Zad 4 [3] => test 4 ) [2] => Array ( [0] => Argania [1] => Montera [2] => Zad 3 [3] => test 3 ) [3] => Array ( [0] => www [1] => asd [2] => aaaaaaa [3] => sd sda sad asd ) [4] => Array ( [0] => Argania [1] => Velmord [2] => Zad 1 [3] => test test test test ) [5] => Array ( [0] => Argania [1] => Velmord [2] => Zad 2 [3] => test 2 test 2 tst 2 test 2 ) ) Chciałbym aby wyświetliły mi się nazwy o indexach [x][0] (czyli www, Argania, Argania, www, Argania, Argania) ale nie powtarzając się czyli tylko www oraz Argania. Po kliknięciu na jedną z tych nazw chciałbym aby pokazały się nazwy o idexach [x][1] ale również nie powtarzając się i należące do poprzedniego indexu czyli po kliknięciu w Argania chciałbym aby wyświetliło się "CapeDun" "Montera" i "Velmord". Chciałbym aby powstało takie drzewiaste menu ale niestety nie mam pojęcia jak to zrobić mając wszystko w takiej tablicy. Zrobiłem to przekazując dodatkowe zmienne w adresie i na ich podstawie wyświetlając kolejne dane ale do tego było potrzebne dużo zapytań przez co nie było to wydajne rozwiązanie. Graficznie chciałbym osiągnąć coś takiego po kliknięciu w Arganie a potem w Velmord: Kod -Argania -----CapeDun -----Montera -----Velmord ---------Zad 1 ---------Zad 2 -www Byłbym wdzięczny za pomoc i mam nadzieje, że zostałem zrozumiany ![]() |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 664 Pomógł: 169 Dołączył: 8.01.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Przy ładowaniu strony pobieraj tylko pierwsze nazwy:
wynik wyświetlasz w postaci dwóch linków i do każdego podpinasz zdarzenie onclick, a w nim funkcja pobierająca za pomocą AJAX'a kolejne nazwy tzn. dla kliknięcia na Argania powoduje wywołanie funkcji wysyłającej zapytanie do pliku na serwerze, który zwraca wynik zapytania:
funkcja AJAX odbiera wynik i dodaje kolejne linki, które działają tak, jak te wcześniejsze. -------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 265 Pomógł: 4 Dołączył: 30.08.2004 Ostrzeżenie: (0%) ![]() ![]() |
No tak, ale to powoduje generowanie wielu zapytań do bazy.
Ja chciałbym osiągnąć taki rezultat wykonując tylko jedno zapytanie i od razu zapisując wszystkie dane do tablicy z której potem właśnie chcę stworzyć takie menu. Da się to tak zrobić ? |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 226 Pomógł: 61 Dołączył: 20.08.2010 Ostrzeżenie: (0%) ![]() ![]() |
http://www.google.com/search?q=SQL+Hierarchical+Data - da się bez zapytań w pętli.
Możesz też zbudować sobie drzewko na podstawie tablicy:
-------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 10:27 |