[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Создание вертикального выпадающего меню
Nazaretto
Здравствуйте!
При создании сайта столкнулся с такой проблемой: создаю выпадающее вертикальное меню, пункты которого должны подгружаться из БД. Создаю 2-х уровневое меню (т.е. родительський элемент и подпункт). HTML, CSS, JavaScript исходники для менюшки есть. Но, не хватает фантазии для написания скрипта, который подгружал бы пункты меню из Базы. cool.gif
Надеюсь на вашу фантазию и опыт! Или, может, на полезную какую-то ссылочку...
Заранее благодарю!!!



Спустя 15 часов, 12 минут, 31 секунда (5.11.2010 - 15:49) Nazaretto написал(а):
Неужели никаких идей нет?

Спустя 46 минут, 5 секунд (5.11.2010 - 16:35) DmitryOpalev написал(а):
Есть... к примеру, если выпадающий список <ul>...</ul>
То можешь выводить как <li>Данные из базы</li>

Спустя 2 часа, 13 минут, 5 секунд (5.11.2010 - 18:48) Nazaretto написал(а):
Цитата (DmitryOpalev @ 5.11.2010 - 13:35)
Есть... к примеру, если выпадающий список <ul>...</ul>
То можешь выводить как <li>Данные из базы</li>

Та это понятно... просто, там же выпадающее меню. Соответсвенно, нужно грамотно пописать циклы...
Вот что у меня есть на данный момент:
<div class="glossymenu">
<?

$db = mysql_connect ("localhost","root","");
mysql_select_db("oxford",$db);
$result = mysql_query("SELECT * FROM books_categories WHERE status='1' ORDER BY id ASC",$db);
$myrow = mysql_fetch_array($result);

$db = mysql_connect ("localhost","root","");
mysql_select_db("oxford",$db);
$result2 = mysql_query("SELECT * FROM books_categories WHERE status='2' AND father='84' ORDER BY id ASC",$db);
$myrow2 = mysql_fetch_array($result2);




do
{printf ("<a class='menuitem submenuheader' href='view_cat.php?cat=%s'>%s</a></p>",$myrow["id"],$myrow["title"])


?>
<div
class='submenu'>
<ul>
<li>
<?


do
{printf ("<a href='view_cat.php?cat=%s'>%s</a></p>",$myrow2["id"],$myrow2["title"]);}
while ($myrow2 = mysql_fetch_array($result2));

?>
</li>
</ul>
</div>
<?




}
while ($myrow = mysql_fetch_array($result));


?>
</div>


В итоге, получилось, что выводятся все родительские пункты (цикл). А вот подпункты выводятся только для ПЕРВОГО род.пункта... для остальных же - нет.. в чём может быть причина - даже не знаю...

Спустя 5 минут, 44 секунды (5.11.2010 - 18:54) sergeiss написал(а):
Цитата (Nazaretto @ 5.11.2010 - 19:48)
для остальных же - нет.. в чём может быть причина - даже не знаю...

Проблема первая - кривейший "поповский" код с циклом do-while, "впихнутым" туда, где он не нужен.
Поэтому я настойчиво рекомендую прочитать тему http://phpforum.ru/index.php?showtopic=21916 и тему http://phpforum.ru/index.php?showtopic=32799.

Плюс к этому, автор выбрал совершенно неправильный раздел (ну это поправимо, конечно... ), и еще создал совершенно неинформативный заголовок темы. На ПХП+ЭсКуЭлль не создаётся меню!

По всем этим причинам тема закрывается с рекомендацией автору ознакомиться с приведенными ссылками. Затем, после коррекции кода, я рекомендую создать тему в ПРАВИЛЬНОМ разделе и назвать её более адекватно. Чтобы заголовок отражал суть вопроса.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.