dynamiczne menu

0

cześć zrobiłem dynamiczne menu na bazie mysql, dwie tabelki, w pierwszej mam przechowywane nazwe poszczeólnych wykazów menu: id_kat, nazwa_kat, a w drugim podkategorie: id_kat, nazwa_podkat, tresc_str.

id_kat - to klucz wiąże obie tabelki.

druga tabela ma pole o nazwie: tresc_str , pole to przechowuje treść danej podstrony.

Moje pytanie: jak wygenerować to menu z bazy żeby wyświetliło mi Kategorie główne menu: czyli np: Artykuły a pod spodem podkategorie z nazwa_podkat, itd Poniżej tak obrazmowo, np:

Strona główna

Artykuły

  • Jakiś art1
  • Jaiś art2
  • id

FAQ

Kontakt

itd

Mam coś takiego:

$query="select * from kategorie left join podkategorie on kategorie.id_kat=podkategorie.id_kat group by kategorie.id_kat";

no i jest prawie dobrze tylko kiedy ma wyświetlić kategorie z podkategoriami to wyświetla kategorie - NAZWE (nazwa_kat) tyle razy ile jest jej podkategorii. a powinno wyświetlić się: raz kategoria i potem pod nią podkategorie.

prosze o pomoc.

A może ma ktoś inny pomysł na rozwiązanie ?

0

Nie wiem jak interpretujesz wynik zapytania ale zapewne w pętli wypisujesz jego wyniki , więc mozesz zaznaczyc w jakis sposob ze główna kategoria została juz zapisana i nie wypisywac jej przy następnych obiegach.

Moim zdaniem lepszym rozwiazniaem bedzie rozbicie tego zapytania na dwa mniejsze. W pierwszym odczytujesz nazwę kategorii, w drugim ,ktore powinno byc w pętli wewnetzrnej nazwy podkategorii. Generlanie jesli zapytania SQL mają prostszą formę łatwiej jest pozniej coś działac w kodzie. Poza tym nie wiem czy tych dwóch zapytan nie wykona i tak szybciej niz tego jednego bo łaczenie tabel jest podobno dosyć kosztowne czasowo.To chyba by było tyle.

0

nie działa mi to dalej prawidłowo :-| , a można prosić o maluśki przykladzik tego co powiedziałeś ? :]

1 użytkowników online, w tym zalogowanych: 0, gości: 1