<?
$url = $_SERVER['REQUEST_URI'];
if($url == $row['pid'])
{$url1 = "menu1";}
else
{$url1 = "menu2";}
?>
<a class="<?=$url1?>" href="/programms/?id=<?=$row['pid']?>"><?=ss($row['title'])?></a>
почему в <a class="" не поступает значение $url1 ? но если поставить переменую $url, то она нормально отображает путь к странице
ломаю голову сутки. у кого какие предложения?
Спустя 8 минут, 55 секунд (10.07.2010 - 00:02) DedMorozzz написал(а):
распечатай переменную юрл1. Посмотри что в ней
Спустя 4 минуты, 12 секунд (10.07.2010 - 00:06) Joliat написал(а):
Пусто. когда смотрю страницу после загрузки класс имеет такой вид
class=""
при
или
class=""
при
class="<?=$url1?>"
или
class="<?php echo $url1?>"
Спустя 5 минут, 23 секунды (10.07.2010 - 00:12) DedMorozzz написал(а):
не верю. Кидай весь код. Ты в явном виде объявляешь переменую ЮРЛ1. Там так иль иначе будет какое-либо значение. Не может быть пустой. Кидай весь участок этого кода.
Спустя 4 минуты, 32 секунды (10.07.2010 - 00:16) Joliat написал(а):
function programms(){
global $db, $pginfo;
ob_start();
$pid = intval($_COOKIE['openprog']);
$res = $db->sql_query("SELECT pid, title FROM ".TABLE_PREFIX."shop_programms WHERE parentid='0' && status='1'");
if($db->sql_numrows($res)>0){
while($row = $db->sql_fetchrow($res)){
?><!--<img class="menu_img" id="pluss_<?=$row['pid']?>" src="/_tpl/default/img/icn/img_m<?=iif($cid==$row['pid'],'','2')?>.jpg">--><?
$ress = $db->sql_query("SELECT pid, title FROM ".TABLE_PREFIX."shop_programms WHERE parentid='".$row['pid']."' && status='1'");
if($db->sql_numrows($ress)>0){
?> <a class="mnu" onclick="return tglProgmenu('<?=$row['pid']?>');"><?=ss($row['title'])?></a><br /><?
?><div style="DISPLAY: <?=iif($cid==$row['pid'],"block","none")?>" id="prog_<?=$row['pid']?>"><ul style="margin:0 0 0 10px;"><?
while($rows = $db->sql_fetchrow($ress)){ ?><li><a href="/programms/?id=<?=$rows['pid']?>"><?=ss($rows['title'])?></a></li><? }
?></ul></div><br /><?
}else{
?>
<?
$url = $_SERVER['REQUEST_URI'];
if($url == $row['pid'])
{$url1 = "menu1";}
else
{$url1 = "menu2";}
?>
<a class="<?=$url1?>" href="/programms/?id=<?=$row['pid']?>"><?=ss($row['title'])?></a>
<br/><br><?
}
}
}
$text = ob_get_contents();
ob_end_clean();
return $text;
}
Дело в том, что cms - самописка (писал не я). Это один из ее файлов. Вот решил доработать. Столкнулся с такой проблемой.
Спустя 2 минуты (10.07.2010 - 00:18) Joliat написал(а):
кстати, знаний у меня не много в PHP. возможно что-то упускаю
Спустя 4 минуты, 39 секунд (10.07.2010 - 00:23) DedMorozzz написал(а):
ух портняка
весь УЧАСТОК того(!) кода
А не всё, что увидил)


Спустя 6 минут, 23 секунды (10.07.2010 - 00:29) Joliat написал(а):
))) сорри. отредактировал предыдущие сообщение))
Спустя 12 минут, 45 секунд (10.07.2010 - 00:42) DedMorozzz написал(а):
Цитата |
}else{ ?> <? $url = $_SERVER['REQUEST_URI']; if($url == $row['pid']) {$url1 = "menu1";} |
тут напиши так:
echo $url = $_SERVER['REQUEST_URI']."<br />"; echo $url1="aaa";die;т.е. просто добавь. И покажи что выдаст. Гляну уже завтра с утра. Нынче спать
Спустя 4 часа, 23 минуты, 20 секунд (10.07.2010 - 05:05) Joliat написал(а):
Чистая страница, а в верхнем левом углу
____________________________
| ааа
|
|
|
Кроме "ааа" - ничего!
____________________________
| ааа
|
|
|
Кроме "ааа" - ничего!
Спустя 4 часа, 28 минут, 2 секунды (10.07.2010 - 09:33) DedMorozzz написал(а):
Начит условие после ЕЛСЕ выполняется, но у тебя переменная ЮРЛ - пустая. ВОт отсюда и копай. Хотя всё равно ЮРЛ1 должно быть со сначением
Спустя 14 часов, 33 минуты, 12 секунд (11.07.2010 - 00:07) Joliat написал(а):
Извини, проверял утром в 5 часов и из-за того что сонный был, не увидел echo первое.
вот что получается если вставить, все, что ты предлогаешь
/programms/?id=1
aaa
вот что получается если вставить, все, что ты предлогаешь
/programms/?id=1
aaa
Спустя 30 минут, 2 секунды (11.07.2010 - 00:37) Basili4 написал(а):
отключены короткие теги все <? замени на <?php
а <?= замени на <?php echo
а <?= замени на <?php echo
Спустя 8 часов, 52 минуты, 1 секунда (11.07.2010 - 09:29) Joliat написал(а):
Basili4, не помогло!(( все так же ничего не выводит
Спустя 44 минуты, 54 секунды (11.07.2010 - 10:14) Basili4 написал(а):
<?php
$url = $_SERVER['REQUEST_URI'];
if($url == $row['pid'])
{$url1 = "menu1";}
else
{$url1 = "menu2";}
?>
<a class="<?php echo $url1?>" href="/programms/?id=<?php echo $row['pid']?>"><?php echo ss($row['title'])?></a>
Переписать на это
<?php
$url = $_SERVER['REQUEST_URI'];
if($url == $row['pid'])
{$url1 = "menu1";}
else
{$url1 = "menu2";}
echo <a class=\"$url1\" href=\"/programms/?id=$row['pid']\"> ss($row['title'])</a>;
echo "($url1)";
?>
смотри что выводит
Спустя 3 минуты, 34 секунды (11.07.2010 - 10:17) DedMorozzz написал(а):
Цитата |
отключены короткие теги все <? замени на <?php а <?= замени на <?php echo |
и
Цитата |
Пусто. когда смотрю страницу после загрузки класс имеет такой вид class="" при class="<?=$url1?>" или class="<?php echo $url1?>" |
грит о том, что дело не в них

Спустя 3 минуты, 53 секунды (11.07.2010 - 10:21) Basili4 написал(а):
а как же он тагда вот эту фигушку выводит
/programms/?id=1
aaa
значит есть значние в $url
/programms/?id=1
aaa
значит есть значние в $url
Спустя 2 минуты, 45 секунд (11.07.2010 - 10:24) DedMorozzz написал(а):
мммм ну всё работает нормально, должно быть значение. но попробуй написать так : $url =url_decode($_SERVER['REQUEST_URI']); хотя врядли...но всё же
Спустя 19 минут, 33 секунды (11.07.2010 - 10:43) Joliat написал(а):
Parse error: syntax error, unexpected T_VARIABLE
ИТС НО ГУД)))
ИТС НО ГУД)))
Спустя 8 минут, 31 секунда (11.07.2010 - 10:52) Joliat написал(а):
при $url =url_decode($_SERVER['REQUEST_URI']); опять же - ничего! Я просто в шоке!
Спустя 17 минут, 28 секунд (11.07.2010 - 11:09) DedMorozzz написал(а):
Быть того не может что не работает. Возьми этот участок кода и перепиши. Не скопируй, а перепиши.
Спустя 9 минут, 24 секунды (11.07.2010 - 11:19) Joliat написал(а):
Смотри, как я сделал. поместил всю "процедуру" в класс
И сейчас начало выводить <a class="menu2" , но нет нигде menu1.
Рад какому-то прогрессу, но без работы первого условия этот прогресс бесполезен. Что теперь делать? как проверить?
Получается:
1)переменной url присваивается адрес страницы, на которой находимся (/programms/?id=1)
2)сверяем url s row[pid] (т.е. с "1") как сюда дописать "/programms/?id=" ?
Вот почему не выполняется первое условие
<a class="<?php
$url = $_SERVER['REQUEST_URI'];
if($url == $row['pid'])
{$url1 = "menu1";
echo $url1;}
else
{$url1 = "menu2";
echo $url1;}
?>"" href="/programms/?id=<?=$row['pid']?>"><?=ss($row['title'])?></a>
И сейчас начало выводить <a class="menu2" , но нет нигде menu1.
Рад какому-то прогрессу, но без работы первого условия этот прогресс бесполезен. Что теперь делать? как проверить?
Получается:
1)переменной url присваивается адрес страницы, на которой находимся (/programms/?id=1)
2)сверяем url s row[pid] (т.е. с "1") как сюда дописать "/programms/?id=" ?
Вот почему не выполняется первое условие
Спустя 8 минут, 35 секунд (11.07.2010 - 11:27) DedMorozzz написал(а):
юзай PHP_SELF!
Спустя 6 минут, 56 секунд (11.07.2010 - 11:34) Joliat написал(а):
Мммм... Как это?
напомню, что я практически не знаю PHP. Помоги, если не сложно.
напомню, что я практически не знаю PHP. Помоги, если не сложно.
Спустя 11 минут (11.07.2010 - 11:45) Joliat написал(а):
УРРРРРРРРРРРРРРРРРААААААААА!
Спасибо за помощь, я разобрался, все работает! вот код:
DedMorozzz, карма +1!
Спасибо за помощь, я разобрался, все работает! вот код:
<a class="<?php
$url = $_SERVER['REQUEST_URI'];
$urls = "/programms/?id=";
if($url == $urls.$row['pid'])
{$url1 = "menu1";
echo $url1;}
else
{$url1 = "menu2";
echo $url1;}
?>"" href="/programms/?id=<?=$row['pid']?>"><?=ss($row['title'])?></a>
DedMorozzz, карма +1!
_____________
О-о-о-о-о-очень начинающий...