Stworzyłem bazę danych taką jak na poniższym rysunku.
http://img147.imageshack.us/my.php?image=bazamenuxw5.jpg
Następnie napisałem funkcje(menu) która będzie pobierała z bazy danych (engine_menu_blok) nazwy bloków menu np. Glowna, Rozne, Informacje i umieszczał te bloki na stronie tak jak na poniższym obrazku.
http://img99.imageshack.us/my.php?image=blokiaf4.jpg
function menu_blok() { $sql= "SELECT * FROM engine_menu_blok ORDER BY blok_id"; $result = mysql_query($sql) or die("Niepoprawne zapytanie: " . mysql_error()); while ($row = mysql_fetch_array($result)) { ?> <div class="border"> <div class="naglowekmenu"> </div> <div class="tlomenu"> <div class="menudemo04d"> <div class="menudemo04 a"> <?php menu(); ?> <div> </div></div></div></div></div><br> <?php } }
W tej funkcji jest zagnieżdżona inna funkcja(menu_blok) która bedzię pobierała z tabeli(engine_menu) nazwy odnośników w menu np. Historia, Kronika, Galeria u imieszczała je w odpowiednim bloku tzn. na podstawie menu_blok_id bedzię przyporządkowała odnośnik do bloku o takim samym id co w blok_id. Gdy odpalam mój skrypt pobiera bloki i odnośniki, ale każdy odnośnik umieszcza w każdym bloku(tak jak na poniższym obrazku) jak zrobić żeby do każdego bloku pobierało tylko odnośniki które maja taki damo id.
Np. Tak chcę żeby to działało:
blok Glowne- odnośniki- Historia, Kronika
blok Rozne- odnośniki- Galeria
blok Informacje- odnośniki- Rozklad PKP, Rozklad Jazdy PKS
Chciałbym żeby to wszystko działo się automatycznie, tzn. żeby przy dodawaniu nowych bloków albo odnośników nie musiałbym nic dodawać w skrypcie.
function menu() { $sql= "SELECT * FROM engine_menu, engine_menu_blok where menu_blok_id=blok_id ORDER BY menu_id"; $result = mysql_query($sql) or die("Niepoprawne zapytanie: " . mysql_error()); while ($row = mysql_fetch_array($result)) { ?> <?php }}
http://img99.imageshack.us/my.php?image=blokiaf4.jpg