X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

Открыть тему
Тема закрыта
> Дайте пожалуйста скрипт php меню с активной ссылкой.
bosker
bosker
Topic Starter сообщение 16.6.2011, 22:23; Ответить: bosker
Сообщение #1


заговорщик
*****

Группа: Banned
Сообщений: 957
Регистрация: 26.5.2010
Из: какого теста ты сделан?
Поблагодарили: 285 раз
Репутация:   74  


Добрый день. Сегодня такой вопрос созрел.
Делаю меню сайта, а надо чтобы если перешли на страницу к примеру: "конфетка из бетона" этот пункт меню был выделен.
Делали так на одном сайте через php, но на моём движке что то не получается. Помогите пожалуйста, или может у кого код завалялся)
facepalm.gif facepalm.gif facepalm.gif facepalm.gif facepalm.gif


--------------------
заговорщик
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
scanread
scanread
сообщение 16.6.2011, 22:29; Ответить: scanread
Сообщение #2


ДЕТАЛИ В ПРОФИЛЕ
******

Группа: Active User
Сообщений: 1009
Регистрация: 16.12.2009
Поблагодарили: 182 раза
Репутация:   56  


_http://php.southpark.com.ua/2008/menu-element/ - это не подойдет? (правда, там пример как сделать)

Можно так сделать:

function currentLocation(){
var curr = ""
curr += window.location;
var aObj = document.getElementById('контейнер где находятся ссылки, может быть и весь документ').getElementsByTagName('A')
for (var i = 0; i < aObj.length; i++) {
var n = "";
n += aObj[i]
aObj[i].style.color =(n.substring(n.lastIndexOf('/'), n.length) == curr.substring(curr.lastIndexOf('/'), curr.length)) ? 'red' : 'blue';
}
}


Сообщение отредактировал scanread - 16.6.2011, 22:32


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
bosker
bosker
Topic Starter сообщение 16.6.2011, 22:34; Ответить: bosker
Сообщение #3


заговорщик
*****

Группа: Banned
Сообщений: 957
Регистрация: 26.5.2010
Из: какого теста ты сделан?
Поблагодарили: 285 раз
Репутация:   74  


scanread тот код возьму на заметку, я желал чуток другой код.
П.С. bosker ждёт=)

У нас код был с (if + else)


--------------------
заговорщик
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
scanread
scanread
сообщение 16.6.2011, 22:42; Ответить: scanread
Сообщение #4


ДЕТАЛИ В ПРОФИЛЕ
******

Группа: Active User
Сообщений: 1009
Регистрация: 16.12.2009
Поблагодарили: 182 раза
Репутация:   56  


bosker, бррр, так такой был, а какой тогда надо, я не понимаю? Какой движок вообще используется то? Может JS или jQuery меню подойдет? Или объязательно пхп?

Сообщение отредактировал scanread - 16.6.2011, 22:45


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
bosker
bosker
Topic Starter сообщение 16.6.2011, 22:46; Ответить: bosker
Сообщение #5


заговорщик
*****

Группа: Banned
Сообщений: 957
Регистрация: 26.5.2010
Из: какого теста ты сделан?
Поблагодарили: 285 раз
Репутация:   74  


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


--------------------
заговорщик
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
rjksdfhe
rjksdfhe
сообщение 16.6.2011, 22:49; Ответить: rjksdfhe
Сообщение #6


Straight arms
*******

Группа: Active User
Сообщений: 2760
Регистрация: 21.4.2009
Из: Мытищи, МО, РФ
Поблагодарили: 1111 раз
Репутация:   163  


Для этого надо знать адрес ссылки в меню и адрес текущей страницы.
На PHP это примерно так (выдрано из одного проекта):

$curUrl=$_SERVER['REQUEST_URI'];

// верхнее меню
$rq=$db->query ('SELECT menu,url FROM structure');
while ($r=$db->fetch ($rq)) {
    if ($curUrl==$r['url']) echo ("<b>{$r['menu']}</b>");
    else echo ("<a href='{$r['url']}'>{$r['menu']}</a>");
}
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
bosker
bosker
Topic Starter сообщение 16.6.2011, 22:52; Ответить: bosker
Сообщение #7


заговорщик
*****

Группа: Banned
Сообщений: 957
Регистрация: 26.5.2010
Из: какого теста ты сделан?
Поблагодарили: 285 раз
Репутация:   74  


тут с запросом в базу данных. а без него бы.


--------------------
заговорщик
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
rjksdfhe
rjksdfhe
сообщение 16.6.2011, 22:58; Ответить: rjksdfhe
Сообщение #8


Straight arms
*******

Группа: Active User
Сообщений: 2760
Регистрация: 21.4.2009
Из: Мытищи, МО, РФ
Поблагодарили: 1111 раз
Репутация:   163  


Надо обязательно знать URL чтобы сравнивать.
Если есть таблица типа 'название в меню'->'url', то так:

$curUrl=$_SERVER['REQUEST_URI']; // надо подогнать к формату, принятому в движке - чтобы можно было сравнить текст

$menuSet=array('Главная'=>'', 'Продукты'=>'products.html', 'Контакты'=>'contacts.html'); // это надо подготовить в движке заранее

// верхнее меню
foreach ($menuSet as $name=>$url) {
    if ($curUrl==$url) echo ("<b>$name</b>");
    else echo ("<a href='$url'>$name</a>");
}
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
bosker
bosker
Topic Starter сообщение 16.6.2011, 23:07; Ответить: bosker
Сообщение #9


заговорщик
*****

Группа: Banned
Сообщений: 957
Регистрация: 26.5.2010
Из: какого теста ты сделан?
Поблагодарили: 285 раз
Репутация:   74  


rjksdfhe такой код наверное не встанет.
Нужен такой вот: если урл совпадает с пунктом меню, то пункт выделен, а если не совпадает, то не выделен.
вот пример какой был:

<?php
if($id == 7){ ?>
<td>
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td><img src="<?php echo SkinGetWay(); ?>/images/menu_button_left.png"/></td>
<td class="menu_button_content_activ"><a href="<?php echo $conf_urlsite; ?>id7.html">Создание</a></td>
<td><img src="<?php echo SkinGetWay(); ?>/images/menu_button_right.png"/></td>
</tr>
</table>
</td>
<?php }else{ ?>
<td>
<table cellpadding="0" cellspacing="0" border="0">
<tr><td class="menu_button_content"><a href="<?php echo $conf_urlsite; ?>id7.html">Создание</a></td>
</tr></table>
</td>
<?php }
?>


--------------------
заговорщик
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
rjksdfhe
rjksdfhe
сообщение 16.6.2011, 23:18; Ответить: rjksdfhe
Сообщение #10


Straight arms
*******

Группа: Active User
Сообщений: 2760
Регистрация: 21.4.2009
Из: Мытищи, МО, РФ
Поблагодарили: 1111 раз
Репутация:   163  


Проще будет задействовать программиста с минимальными навыками (не меня).
Тут метод "возьми код с форума и вставь, сразу всё получится" не сработает.

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Горячая тема (нет новых ответов) Тема имеет прикрепленные файлыОцените первую работу пожалуйста
56 Findes 10868 Сегодня, 17:13
автор: Vlad_Sokolov
Открытая тема (нет новых ответов) Нужна верстка со знанием php
4 Nemo 358 Вчера, 7:14
автор: Nemo
Открытая тема (нет новых ответов) Ищу php-программиста, работа с Yii2
0 eduarddis 307 19.5.2018, 15:58
автор: eduarddis
Горячая тема (нет новых ответов) Помогите, пожалуйста, моей дочери выжить!
благотворительный топик
30 vitvirtual 3771 19.5.2018, 8:30
автор: vitvirtual
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыСкрипт локальной сапы OWLM
Скрипт для работы со своими донорами и PBN
0 EroPaysSupport 321 18.5.2018, 17:33
автор: EroPaysSupport


 



RSS Текстовая версия Сейчас: 23.5.2018, 21:31
Дизайн