Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Скрытие активной ссылки
 
 автор: Yan   (28.07.2009 в 20:47)   письмо автору
 
 

Дайте пожалуйста скрипт, который делает скрытие активной ссылки.
Тоесть, имеем страничку на гетах типа:

Статическая шапка
...
if (isset($_GET ['alias'])) {
$alias = trim($_GET ['alias']);

if ( $alias == "feedback") { include("modules/feedback.php"); }
if ( $alias == "map") { include("modules/map.php"); }
...
Статический фотер

И в верху емеется статическое меню.
Вот нужен скрипт, который скрывает ссылку (или подчеркивает) на которой находится юзер.
Типа мы находимся на странице index.php?2 и у нас такое меню:
<a href=/?1>1</a>
<a href=/?2><i>2</i></a>
<a href=/?3>3</a>

Заранее огромное спасибо!

  Ответить  
 
 автор: Рома   (28.07.2009 в 21:07)   письмо автору
 
   для: Yan   (28.07.2009 в 20:47)
 


 <style>
 .s1{color:#FF0000;}
 </style>
 <?php
  
if($_GET['i']==1){$link1='<a class="s1" href="index.php?i=1">ссылка 1</a>';}else{$link1='<a class="s2" href="index.php?i=1">ссылка 1</a>';}
  if(
$_GET['i']==2){$link2='ссылка 2';}else{$link2='<a class="s2" href="index.php?i=2">ссылка 2</a>';}
  if(
$_GET['i']==3){$link3='';}else{$link3='<a class="s2" href="index.php?i=3">ссылка 3</a>';}
 echo 
$link1.$link2.$link3;
 
?>


кажется вот так можно. раз пять спросонья переправлял :)

  Ответить  
 
 автор: YAN   (28.07.2009 в 23:36)   письмо автору
 
   для: Рома   (28.07.2009 в 21:07)
 

Да, можно так, спасибо. Это возьму для своего другого сайта.

Но в моём данном случае немного другой тип меню. Оно генерируется из существующих страниц и т.д. То есть ссылки не прописаны. И ими по отдельности играться нельзя. Только всеми сразу.

Нужен метод скрипта типа такого:


Узнаём на какой мы странице (допустим 123.ru/bla_bla.html) (присуствует чпу)
Если такой адрес есть в меню, то мы обводим его тегами <i> или добавляем какой то класс.
Отображаем.

ПыСы.
Скрипт который создаёт меню:
$menu_tmpl = "<p><img src=vikna_files/m_1.gif height=6 width=14><a href={LINK}>{TITLE_LINK}</a></p>";
$output = $menu_tmpl;
$output = str_replace ("{LINK}", $elem[$i][1] . ".html", $output);
$output = str_replace ("{TITLE_LINK}", $elem[$i][2], $output);
$menu_output .= "".$output."";

Тоесть в <a href={LINK}>{TITLE_LINK}</a> можно добавить типа такого
$active = если адрес ссылки такой же как и страницы - даём класс id="active"
<a href={LINK} ".$active.">{TITLE_LINK}</a>

  Ответить  
 
 автор: Рома   (29.07.2009 в 00:06)   письмо автору
 
   для: YAN   (28.07.2009 в 23:36)
 

if
preg_replace()
$_SERVER['SERVER_NAME']
$_SERVER['REQUEST_URI']

  Ответить  
 
 автор: YAN   (29.07.2009 в 00:29)   письмо автору
 
   для: Рома   (29.07.2009 в 00:06)
 

Тоесть типа



if preg_replace()
{
$qqq= $_SERVER['SERVER_NAME'];
$www= $_SERVER['REQUEST_URI'];

Если {LINK} = $www то $aaa - echo="id='act'";
А еси нед, else = $aaa - echo="id='noact'";

echo "<a href={LINK} ".$aaa.">{TITLE_LINK}</a>";
}

А как это теперь сделать правильно? =)

  Ответить  
 
 автор: Рома   (29.07.2009 в 00:58)   письмо автору
 
   для: YAN   (29.07.2009 в 00:29)
 

<?php
$adres
="http://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
  
или 
  $adres
=$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
  
или 
  $adres
=$_SERVER['REQUEST_URI'];


вам виднее
<?php 
$menu_tmpl 
"<p><img src=vikna_files/m_1.gif height=6 width=14><a href={LINK}>{TITLE_LINK}</a></p>"
if(
$elem[$i][1]==$adres$menu_tmpl=preg_replace("<a href={LINK}>","<a id='active' href={LINK}>",$menu_tmpl); 
$output $menu_tmpl;
$output str_replace ("{LINK}"$elem[$i][1] . ".html"$output);
$output str_replace ("{TITLE_LINK}"$elem[$i][2], $output);
$menu_output .= "".$output."";

  Ответить  
 
 автор: YAN   (29.07.2009 в 17:01)   письмо автору
 
   для: Рома   (29.07.2009 в 00:58)
 

пасиба!!! большое!!!

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования