![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 13.02.2013 Ostrzeżenie: (0%) ![]() ![]() |
Nie sądziłem że to taki problem będzie.
Jestem wielkim miłośnikiem tablic i używam ich zawsze kiedy tylko się da bo mają praktycznie nieograniczone możliwości jeżeli chodzi o zarządzanie danymi. Rzadko również korzystam z rekurencji ze względów wydajnościowych ale czasem jest taka konieczność. Potrzebuję upakować kolejne kroki w hierarchii odnośników do tablicy podczas wykonywania rekurencji. Nie wiem, czy robię coś źle że nie mogę takiej tablicy utworzyć. Podaje kod.
Jak widać nie jest żaden skomplikowany kod. Prosty do bólu a jednak tablica nie tworzy się. Wywołanie funkcji z echo zamiast przypisania do tablicy działa poprawnie. Wywołanie print_r pokazuje, że tablica istnieje jednak nie ma do niej żadnego dostępu. Nie wiem dlaczego to jest takie problematyczne... |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Może przydałaby się odrobina podstaw?
robisz print_r po return a przecież po return nic już nie jest wykonywane.... skoro createMenu zwraca tablice, to wypadałoby ją odebrać..... nie: createMenu($getPobranieDanych['id_rodzic'], $tablica); a: $tablica = createMenu($getPobranieDanych['id_rodzic'], $tablica); Pomijam już fakt, ze stosowanie zapytań w rekurencji to najgorsze z najgorszych rozwiązań. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 13.02.2013 Ostrzeżenie: (0%) ![]() ![]() |
print_r znalazł się przykładowo. Źle to może opisałem przedstawiłem ale chodziło mi, że zamiast return($tablica). (wiem że po return kod nie jest już wywoływany)
Zapytania wiem że nie są optymalne. To prototypowy kod. Docelowo będę pobierał wszystko do tablicy i dopiero korzystał z rekurencji. Dzięki. Podstawowy błąd - nie dopaczenie. Sprawdzę... Ten post edytował RONINZGR 13.02.2013, 09:58:40 |
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Pozatym masz niesamowity błąd koncepcyjny....
Zawsze pobierasz tylko jeden rekord - źle. do funkcji masz przekazywać id_rodzic a w funkcji masz pobierac w petli wszystkie dzieci tego rodzica. w tej samej pętli dla danego dziecka masz wykonac znowu rekurencyjnie te funkcje, z tym ze teraz jako id_rodzic masz przekazac id wlasnie przetwarzanego dziecka. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 13.02.2013 Ostrzeżenie: (0%) ![]() ![]() |
Pozatym masz niesamowity błąd koncepcyjny.... Zawsze pobierasz tylko jeden rekord - źle. do funkcji masz przekazywać id_rodzic a w funkcji masz pobierac w petli wszystkie dzieci tego rodzica. w tej samej pętli dla danego dziecka masz wykonac znowu rekurencyjnie te funkcje, z tym ze teraz jako id_rodzic masz przekazac id wlasnie przetwarzanego dziecka. To tylko belka aktualnej pozycji a nie całe menu (IMG:style_emoticons/default/smile.gif) Ten post edytował RONINZGR 13.02.2013, 16:07:11 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 2.10.2025 - 17:46 |