Master-X
Регистрация
|
Вход
Форум
|
Новости
|
Статьи
Главная
»
Форум
»
Программинг, Скрипты, Софт, Сервисы
»
Тема:
Подскажите по коду
Новая тема
Ответить
цитата
10/05/12 в 08:33
densa
Сейчас тайтл страницы формируется так
<title><?php echo $title_bar." - ".$title_desc.$pagedisplay;?></title>
я хочу что бы для главной был
<title><?php echo $title_bar ?></title>
для отсальных
<title><?php echo $title_desc.$pagedisplay;?></title>
пишу
<?php
if($_SERVER['REQUEST_URI'] == '/'){
<title> echo "$title_bar"; </title>
}else{
<title> echo "$title_desc.$pagedisplay";</title>
}
?>
Не работает, подскажите где ошибка
цитата
10/05/12 в 08:52
st01en
densa:
Сначала проверь, чо у тебя там в $_SERVER['REQUEST_URI']
echo $_SERVER['REQUEST_URI'];
цитата
10/05/12 в 09:02
densa
вот это вернуло
/
цитата
10/05/12 в 09:06
Vyacheslav
Попробуй сначала протестировать для корня домена и для остальный страниц текущий echo $_SERVER['REQUEST_URI']; Катина станет яснее.
Возможно тебе нужно что-то вроде:
Код:
<?php
if(!$_SERVER['REQUEST_URI']){
<title>echo "$title_desc.$pagedisplay";</title>
}else{
<title>echo "$title_bar";</title>
}
?>
цитата
10/05/12 в 09:08
Vyacheslav
Ещё вариант, используй вместо "==" - "==="
цитата
10/05/12 в 09:51
densa
Vyacheslav писал:
Возможно тебе нужно что-то вроде:
Код:
<?php
if(!$_SERVER['REQUEST_URI']){
<title>echo "$title_desc.$pagedisplay";</title>
}else{
<title>echo "$title_bar";</title>
}
?>
Не работает
цитата
10/05/12 в 10:00
samedi
Код:
<title>
<?php
if ($_SERVER['REQUEST_URI'] == '/' || $_SERVER['REQUEST_URI'] == '/index.php') {
echo $title_bar;
} else {
echo $title_desc . $pagedisplay;
}
?>
</title>
Последний раз редактировалось: samedi (
10/05/12 в 10:04
), всего редактировалось 1 раз
цитата
10/05/12 в 10:03
Alexandur
Может лучше
Код:
isset($_SERVER['QUERY_STRING'])
?
цитата
10/05/12 в 10:12
samedi
gimcnuk писал:
Может лучше
Код:
isset($_SERVER['QUERY_STRING'])
?
Может не работать с permalinks.
цитата
10/05/12 в 10:22
densa
samedi писал:
Код:
<title>
<?php
if ($_SERVER['REQUEST_URI'] == '/' || $_SERVER['REQUEST_URI'] == '/index.php') {
echo $title_bar;
} else {
echo $title_desc . $pagedisplay;
}
?>
</title>
Отлично, то что надо. Спасибо большое
цитата
10/05/12 в 11:50
Emperor
а не проще написать
if($_SERVER['PHP_SELF'] === '/index.php')
?
цитата
10/05/12 в 12:11
AWD
Emperor писал:
а не проще написать
if($_SERVER['PHP_SELF'] === '/index.php')
?
браво!
только предлагаю еще на байт укоротить, не "===" а "==", ты ведь не сравниваешь возможный FALSE с, например, пустой строкой '', ибо
(FALSE == '') вернет TRUE
(FALSE === '') вернет FALSE
а в случае с явно указанной строкой ни к чему три знака равенства
цитата
10/05/12 в 12:42
samedi
Emperor писал:
а не проще написать
if($_SERVER['PHP_SELF'] === '/index.php')
?
Не проще. Не будет работать example.com/index.php?page_id=2 example.com/category/second
цитата
10/05/12 в 12:44
samedi
AWD писал:
браво!
только предлагаю еще на байт укоротить, не "===" а "==", ты ведь не сравниваешь возможный FALSE с, например, пустой строкой '', ибо
(FALSE == '') вернет TRUE
(FALSE === '') вернет FALSE
а в случае с явно указанной строкой ни к чему три знака равенства
Только предлагаю вообще условие удалить, так как в файле index.php код будет выполняться всегда.
цитата
10/05/12 в 12:58
AWD
samedi писал:
Только предлагаю вообще условие удалить, так как в файле index.php код будет выполняться всегда.
согласен, ступил. по диагонали читал и забыл про квери_стринг
тогда
if ($_SERVER['PHP_SELF'] == '/index.php' && !$_SERVER['QUERY_STRING'])
....
все равно укоротил. вот так меня сегодня шмаль вставила - укорачивать длинное
цитата
10/05/12 в 13:00
Emperor
samedi писал:
Не будет работать example.com/index.php?page_id=2
почему не будет? у меня работает
цитата
10/05/12 в 13:03
Emperor
AWD писал:
а в случае с явно указанной строкой ни к чему три знака равенства icon_rolleyes.gif
http://www.php.net/manual/ru/language.operators.comparison.php
Цитата:
$a === $b Тождественно равно TRUE если $a равно $b и
имеет тот же тип
.
мы же строку со строкой сравниваем, не?
цитата
10/05/12 в 13:15
AWD
Emperor писал:
мы же строку со строкой сравниваем, не?
я же говорил, сегодня у меня манечка укорачивать
вообще ты прав, и === выполняется в ~1,5 раза быстрее, чем ==, ибо не происходит проверка и или/приведение типов.
просто, я как старый сишник пишу ==, вот и выё...
исчезаю...
цитата
10/05/12 в 19:51
samedi
Emperor писал:
почему не будет? у меня работает
Потому что index.php может выполняться не только при обращении к главной странице.
цитата
10/05/12 в 20:37
AWD
samedi писал:
Потому что index.php может выполняться не только при обращении к главной странице.
по ходу все эти пережовывания ни к чему.
твой вариант единственно верный и почти универсальный, за исключением случаев, когда индексная страница называется по другому (ну, там, main.php). я, вот, не знаю способа, как из пхп узнать DirectoryIndex.
Новая тема
Ответить
Эта страница в полной версии