|
|
|
| Делается меню на сайт(выпадающие) есть уловие чтобы можно было дабавлять и убирать пункты в меню! меню вида:
---глав. пункт----- | ---глав пункт---- |
-пункт ниже--- | -пункт ниже--- |(пунктов ниже может быть сколько угодно в одном глав пункте)
Есть две таблице в первой(menyglav) находяться все заглавные пункты
а во второй таблице находятся все пункты ниже
меню сделано на css:
<div class="пункт главный">
<div class="пункт ниже">
<div class="пункт ниже">
<div class="пункт ниже">
<div class="пункт главный">
<div class="пункт ниже">
<div class="пункт ниже">
<div class="пункт ниже">
|
Пытался сделать, но не получилось сотавить условие!
прдпологаю что нужно втиснуть в одни вывд из бд, другой вывод(выводящий "пункт ниже")!
дамп таблиц:
Create table menyglav (
id_menyglav INT(11) not NULL AUTO_INCREMENT,
name tinytext not null, // имя
url TINYTEXT not null, // ссылку
title TINYTEXT NOT NULL, // титл ссылки
adminurl TINYTEXT NOT NULL, //так для нужд
timeup DATETIME NOT NULL, // время последнег редактирования
primary key (id_menyglav));
Create table podmeny (
id_podmeny INT(11) NOT NULL AUTO_INCREMENT,
podname TINYTEXT NOT NULL,
podurl TINYTEXT NOT NULL,
podtitle TINYTEXT NOT NULL,
idglav SMALLINT NOT NULL,
podtimeup DATETIME NOT NULL,
primary key (id_podmeny));
|
Не написал самое главное:
ЗАДУМКА ТАКОВА: ВО ВТОРОЙ ТАБЛИЦЕ ЕСТЬ ПУНКТ "IDGLAV" НЕМ БУДЕТ СОДЕРЖАТЬСЯ ID_MENYGLAV , И ВЫВОДИТЬСЯ БУДЕТ ПО ЭТОМУ ПРИЗНАКУ! | |
|
|
|
|
|
|
|
для: One art galery
(02.02.2007 в 13:12)
| | скрипт не рабочий, но задмка там прослеживается!
$query = "SELECT * FROM menyglav";
$cat = mysql_query($query);
if(!$cat) exit(mysql_error());
While(list($id_menyglav, $name, $url, $adminurl, $title, $timeup) = mysql_fetch_row($cat))
{
echo "<ul>
<li><a class=\"outer\" href=\"$url\" title=\"$title\">$name</a></li>";
$query2 = "SELECT * FROM podmeny, menyglav Where podmeny.idglav = menyglav.id_menyglav";
$cat2 = mysql_query($query2);
if(!$cat2) exit(mysql_error());
While(list($podname, $podurl, $adminpurl, $podtitle, $idglav, $podtimeup) = mysql_fetch_row($cat2))
{
echo "<li><a class=\"inner\" href=\"$podurl\" title=\"$podtitle\">$podname</a></li>";
}
echo "</ul>";
}
|
| |
|
|
|
|
|
|
|
для: One art galery
(02.02.2007 в 13:12)
| | может я конечно что, то не понял но для оргинизации меню и подменю не нужно городить огород из таблиц. Иерархия разделов делается в одной таблице, где нужны два обязательных поля: ID-первичный ключ и P_ID - родитель (у корневых - 0).
Если нужно иметь возможность менять местами пункты меню - добавляем поле SORT, которое в пределах одной группы указывает на их очередность.
А т.к. получаем рекурсивную структуру данных, то и обрабатывать их нужно рекурсиями.
Есть вопросы стучитесь в асю.
---
One art galery не согласен что стоит сразу генерить html, лутше собрать в массив а дальше юзать по мере надобности. | |
|
|
|