Witam,
Stworzyłem dynamiczne menu w php i pierwszy poziom działa, ale nie działa pobieranie podstron z drugiej tabeli. Mam dwie tabele w pierwszej są pobierane strony, a z drugiej podstrony. Kod wygląda tak:
Pobiera mi strony pod nazwą start a nie pod drugą stroną. Gdzie jest błąd? Wzorowałem się na tutorialu, który jest napisany też w php, ale z użyciem PDO, ja chcę użyć new mysqli.
bo chcę, aby bylo dynamiczne. Zapiszę stronę w bazie, podam link i chciałbym, aby było w menu i tak mam, ale w pierwszym poziomie (xpl_menu). I chciałbym drugiego poziomu tak zrobić, ale nie edytować kod i ręcznie wprowadzać adresy stron.
Rozważałem, ale wybrałem wariant drugi, i wzorowałem się na powyższym filmie. A co wg.Ciebie jest gorzej?
Oczywiście, że jest gorzej bo to są te same dane trzymane w dwóch tabelach, plus jak będziesz chciał dodać 3 level menu to musisz dokładać kolejną tabelę. Jak masz dobrze zaprojektowane menu zapisywane w jednej tabeli to możesz mieć nieskończoną ilość poziomów - jedyny problem to jak to potem wyświetlić by było czytelne i użyteczne.
Generalnie ten tutorial na którym bazujesz to jest chyba marnej jakości skoro ktoś w taki sposób pokazuje implementację wielopoziomowego menu.
Na początku chciałem mieć strony tylko w jednej bazie, ale myślałem, że gorzej będzie, dlatego zrobiłem na dwóch tabelach. Teraz okazuje się, że jest gorzej trzymając strony w wielu tabelach. W takim razie wracam do jednej tabeli. Spróbuje porobić, a jak nie będzie wychodzić, to wrócę do tego tematu. Chyba, że zrobię, co wyżej pisałem kompozycję menu.
Niestety nie da się, co sprawdzam id strony w bazie, to pokazuje mi kategorie rozwijane przy start, a chce aby strony były przy id=2. Muszę rozwijane dynamiczne zrobić inaczej, przypisując numer id każdemu elementowi, czyli na sztywno lub zostać przy jednopoziomowym menu, który działa.
Tylko ja nie napisałem kodu, który pobiera dane do tablicy, to raz. A po drugie, napisałem inaczej menu, dając ograniczenie do 10 stron a kolejne pokazują się, gdy tylko pokaże się strzałka z nowymi stronami.
Pierwsze, to sposób przechowywania struktury menu. Baza danych to dobry pomysł, bo pozwala na zapisanie relacji, stanowi centralne miejsce z którego mogą czerpać strona internetowa, aplikacja mobilna itd.
Drugi temat to sposób prezentacji tych danych na stronie internetowej. To czy będą wyświetlone jako pełna lista, ograniczona i rozwijana, czy może w formie dropdowna - to już dowolna kwestia.
Oba tematy stanowią niezależne warstwy systemu i nie powinny wpływać na siebie. Menu powinieneś ściągnąć w całości i uformować strukturę albo po stronie backendu (ułożyć ja w drzewko) albo po stronie frontendu i tam na podstawie listy wpisów zbudować hierarchię i wyświetlić
Nie sądzę, abym mieszał zagadnienia, po prostu, użyłem kod php z html. I tak na początku chciałem zrobić, co widać w kodzie, który dałem w pierwszym poście, ale jak zauważyłem, był to zły pomysł. Obecnie, wystarcza mi to, co teraz zrobiłem.