[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Назначение CSS класса средствами PHP
yurrey
Здравствуйте форумчане, уважаемые специалисты в PHP!

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

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

Дано:
На сайте есть каталог из разделов, где хранятся определенные документы. Ссылки на документы формируются по типу:
/раздел/документ
/раздел/раздел/документ
Также в каждом разделе и подразделе есть пагинация по страницам, типа:
/раздел/?страница=номер-страницы

Задача стоит следующая:
1. На странице документа назначить определенный CSS класс ссылкам, которые указывают на родительский раздел.
2. На других страницах раздела, которые создаются пагинацией раздела также назначить тот самый класс ссылкам на страницу раздела без добавки "?страница=номер-страницы".

Данная задача необходима для подсветки родительских элементов меню на странице документов и на страницах, создаваемых пагинацией.

Как реализовать данную задачу на PHP я даже приблизительно не знаю. Сама схема возможно должна выглядеть так:

если страница = сайт/раздел/* и неважно что там после *, то все ссылки сайт/раздел/ (html тег a) на странице приобретают атрибут style="class: current".

Данная схема кажется мне разумной, и если бы задача не стояла так остро, я бы через месяц-другой докопался до ее решения.

Но сейчас я рассчитываю на вашу помощь. Подскажите мне пожалуйста нужные php функции и как построить команду. Предложения типа помощи в частном порядке пишите пожалуйста в личку. Но я хотел бы разобраться в этом лично, так, чтобы в дальнейшем уже самому разбираться в подобных задачах.
bob marley
ну как понимаю нужно обозначить css стиль ссылке в меню страницы которая открыта?вот смотри говоришь есть номер страницы..тогда так:
 
$id=$_GET['idpage']; /// id страницы получаешь
$menu='
<a href="ссылка" class="page1">page1</a>
<a href="ссылка" class="page2">page2</a>
'
;
if($id==1){
$menu=strtr($menu, array('class="page1"'=>'class="active"'));
}elseif($id==2){
$menu=strtr($menu, array('class="page2"'=>'class="active"'));
}
print $menu;

настоятельно советую использовать этот код как пример или же дописывать его и додумывать.Всякие различные проверки и алгоритм замены делать другой не много.

_____________
伊戈尔
Быстрый ответ:

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