Регистрация
Вход через соцсети
Восстановление пароля

Получить ссылки на предыщий и следующий разделы этого же уро

Новый топик
12.12.2007, 14:12
Ответить | Цитировать
D.A.
Leon

Зарегистрирован:
2006-09-21
Сообщений: 19

Добрый день!

Подскажите, как можно получить ссылки и название предыдущего и следующего раздела для текущего.
т.е. есть меню:

Главная
--Страница 1
--Страница 2
--Страница 3
--Страница 4

Страница 1 должна содержать ссылку на страницу 2
Страница 2 должна содержать ссылки на страницы 1 и 3
Страница 3 должна содержать ссылки на страницы 2 и 4
И т.д.

Дмитрий Акинин
12.12.2007, 17:23
Ответить | Цитировать
Сергей

Зарегистрирован:
2006-12-07
Сообщений: 14

Я делал так:

Это в шаблоне вывода
Код:

function whereIsMyLeftSide($parent_sub, $curPrior)
{
//запрос, если ли разделы у которых приоритет меньше чем у этого
return listQuery("SELECT Subdivision_Name,Hidden_URL FROM Subdivision WHERE Checked AND Parent_Sub_ID ='{$parent_sub}' AND (Priority < '{$curPrior}') ORDER BY Priority DESC LIMIT 1 ", "<a href='$data[Hidden_URL]'>$data[Subdivision_Name]</a>");
}

function whereIsMyRightSide($parent_sub, $curPrior)
{
//запрос, если ли разделы у которых приоритет больше чем у этого
return listQuery("SELECT Subdivision_Name,Hidden_URL FROM Subdivision WHERE Checked AND Parent_Sub_ID ='{$parent_sub}' AND (Priority > '{$curPrior}') ORDER BY Priority LIMIT 1 ", "<a href='$data[Hidden_URL]'>$data[Subdivision_Name]</a>");
}

function whereIsMyCenterSide($parent_sub, $curPrior)
{
//запрос, если ли разделы у которых приоритет такой же
return listQuery("SELECT Subdivision_Name,Hidden_URL FROM Subdivision WHERE Checked AND Parent_Sub_ID ='{$parent_sub}' AND (Priority = '{$curPrior}') ORDER BY Priority LIMIT 1 ", "<td bgcolor='#5DAAFD' width='33%' align='center'><a href='$data[Hidden_URL]'>$data[Subdivision_Name]</a></td>");
}


$browse_sub[lvl3_1][prefix] = "<table cellspacing='0' cellpadding='5' width='100%' style='filter:alpha(opacity=60); opacity: 0.6'><tr>";
$browse_sub[lvl3_1][suffix] = "</tr></table>";
$browse_sub[lvl3_1][active_link] = $browse_sub[lvl3_1][active] = "

<td bgcolor='#CBE4FD' width='33%' align='left'>&nbsp;".whereIsMyLeftSide($data[$i][Parent_Sub_ID],$data[$i][Priority])."</td>
".whereIsMyCenterSide($data[$i][Parent_Sub_ID],$data[$i][Priority])."
<td bgcolor='#CBE4FD' width='33%' align='right'>&nbsp;".whereIsMyRightSide($data[$i][Parent_Sub_ID],$data[$i][Priority])."</td>

";

Сделал не очень хорошо, т.к делал в перерывах между работой, но думаю, что по аналогии можно сделать, что-то хорошее
12.12.2007, 18:54
Ответить | Цитировать
D.A.
Leon

Зарегистрирован:
2006-09-21
Сообщений: 19

Спасибо, Сергей! Жаль что нет предусмотренного для этого какого-то более стандартного способа. Сейчас можно получить только родительскую ветку для текущего объекта...

Дмитрий Акинин
198 196 2007-12-12 18:54:32 9175
Описание проекта