Подскажите с меню пожалуйста

C8
На сайте с 01.09.2010
Offline
4
582

Все привет!

У меня такая возникла проблема...

Вывожу верхнее меню из базы файлом wiev_top_menu таким вот кодом:

<?php

$result = mysql_query ("SELECT * FROM top_menu",$db);

if (!isset($id)){$id=1;}
while ($top_menu = mysql_fetch_array ($result))
{
if ($id==$top_menu['page'])
{
$class = " class='focus'";
}
else
{
$class = null;
}
echo "<td".$class."><a href='wiev_top_menu.php?id=".$top_menu['id']."'>".$top_menu['button_name']."</a></td>";
}
?>

Все прекрасно работает, но в этом меню присутствует еще и такой пункт как ГЛАВНАЯ с ссылкой http://prostodub.ru/wiev_top_menu.php?id=1 а также ГЛАВНАЯ доступна по ссылки http://prostodub.ru/

И таким образом получается две ГЛАВНЫЕ ведь так? я так понимаю что могут и возникнут скорее всего проблемы с индексацией в Яндексе, что делать то подскажите пожалуйста, может я совсем неправильно меню то делаю и так вообще никто никогда не делал и если это так безумно буду благодарен всем кто скажет как правильно нужно.

Спасибо всем заранее.

VID01
На сайте с 29.01.2010
Offline
84
#1

Сделайте так:


echo "<td".$class."><a href='".($top_menu['id']!=1?"/wiev_top_menu.php?id=".$top_menu['id']:"/")."'>".$top_menu['button_name']."</a></td>";
[umka]
На сайте с 25.05.2008
Offline
456
#2

$result = mysql_query ("SELECT * FROM top_menu WHERE id<>1",$db);

:)

Лог в помощь!
C8
На сайте с 01.09.2010
Offline
4
#3

Спасибо Вам большое все заработало, я безумно рад, спасибо еще раз выручили)

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

Если не сложно разжуйте логику пожалуйста )

VID01
На сайте с 29.01.2010
Offline
84
#4

($top_menu['id']!=1 ? "/wiev_top_menu.php?id=".$top_menu['id']  :  "/")
- это сокращенная форма записи условного оператора.

$text=($a==$b) ? "А равно Б" : "А не равно Б";

Если выполняется условие в скобках, переменной $text присвоится "А равно Б", если нет, то присвоится то, что после двоеточия.

Т.е. мы для всех пунктов меню, где id не равен 1 (1-это главная), выводим '/wiev_top_menu.php?id=...', если id равен 1, то выводим просто слеш "/", и ссылка ведет чисто на домен :)

C8
На сайте с 01.09.2010
Offline
4
#5

Спасибо большое так все доступно объяснили, а вот тут что за <> стоят?

$result = mysql_query ("SELECT * FROM top_menu WHERE id<>1",$db);
VID01
На сайте с 29.01.2010
Offline
84
#6

Это означает "не равно", аналогичен "!="

C8
На сайте с 01.09.2010
Offline
4
#7

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

LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#8
'[umka:
;7550406']$result = mysql_query ("SELECT * FROM top_menu WHERE id<>1",$db);
:)

Тоже начинали с Дельфи? :)

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
[umka]
На сайте с 25.05.2008
Offline
456
#9
LEOnidUKG:
Тоже начинали с Дельфи? :)

Начинал с GW-Basic :) Но паскали с дельфями тоже были ;)

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

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий