Подправить код.

LG
На сайте с 17.01.2014
Offline
42
540

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

Нужен код который выводил бы определенную картинку (например: 44.gif) на страничке у которой id =44, то есть на каждой страничке, со своим id своя картинка. Вывод я добился, но как сделать чтобы на тех страничках на которых я не хочу размещать картинку, не было значка отсутствия картинки с описанием alt, или хотя бы заменить на какую нибудь общую картинку.

Вот код, который я со своими малыми знаниями ковырял и мучил):

<?php
$catID = osc_search_category_id();
?>

<?php if( osc_search_category_id() ) { ?>
<img src="<?php echo osc_current_web_theme_url('images/reklama/nedvizimost_') . $catID[0] . '.gif' ?>" alt="Онлайн1" width="285px"/>

<?php } else { ?>


<img src="<?php echo osc_current_web_theme_url('images/reklama/nedvizimost_01.gif') ?>" alt="Онлайн2" width="285px"/>
<?php } ?>
C
На сайте с 04.02.2005
Offline
277
#1

if ($catID == 44) {

здесь ваша картинка

} else {

}

LG
На сайте с 17.01.2014
Offline
42
#2
Chukcha:
if ($catID == 44) {
здесь ваша картинка
} else {
}

Это мне сколько нужно будет описать, если у меня 30 страничек со своим id? или я что то не понял, можете полностью мне код написать. Спасибо что отреагировали.

Я может не все написал в вопросе, этот код я ставлю на странице поиска, то есть, у меня физически один файл search.php, вот в нем мне нужно это все описать.

<?php
$catID = osc_search_category_id();
?>

<?php if( osc_search_category_id() ) { ?>
<img src="<?php echo osc_current_web_theme_url('images/reklama/nedvizimost_') . $catID[0] . '.gif' ?>" alt="Онлайн1" width="285px"/>

это часть выводит, работает все нормально, но ка теперь убрать(не показывать, скрыть) на страничках на которых не хочу, или показывать другую картинку(общую), для такого случая, например картинку: "логотипа нет".

V
На сайте с 08.12.2015
Offline
5
#3

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

LG
На сайте с 17.01.2014
Offline
42
#4
vkulakov:
Так уже правильно, вроде, написано. Только закрывающей фигурной скобки не хватает. Т. е. сейчас, если категории нет, то картинка выводится не будет.

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

V
На сайте с 08.12.2015
Offline
5
#5

Теперь понял в чём проблема. Попробуйте следующий код:


<?php
function osc_search_category_id() {
return array(5);
}

function osc_current_web_theme_url($url) {
return $url;
}

$catID = osc_search_category_id();
?>

<?php if( $catID && !in_array($catID[0], array(10, 20, 30))) { ?>
<img src="<?php echo osc_current_web_theme_url('images/reklama/nedvizimost_') . $catID[0] . '.gif' ?>" alt="Онлайн1" width="285px"/>
<?php } ?>

Массив array(10, 20, 30) - это айдишники, для которых картинка не будет выводится совсем. Функции osc_search_category_id и osc_current_web_theme_url - это просто заглушки, чтобы было удобно тестировать.

LG
На сайте с 17.01.2014
Offline
42
#6
vkulakov:
Теперь понял в чём проблема. Попробуйте следующий код:

<?php
function osc_search_category_id() {
return array(5);
}

function osc_current_web_theme_url($url) {
return $url;
}

$catID = osc_search_category_id();
?>

<?php if( $catID && !in_array($catID[0], array(10, 20, 30))) { ?>
<img src="<?php echo osc_current_web_theme_url('images/reklama/nedvizimost_') . $catID[0] . '.gif' ?>" alt="Онлайн1" width="285px"/>
<?php } ?>


Массив array(10, 20, 30) - это айдишники, для которых картинка не будет выводится совсем. Функции osc_search_category_id и osc_current_web_theme_url - это просто заглушки, чтобы было удобно тестировать.

) Ой, спасибо, помог. СПАСИБО еще раз)

<?php
$catID = osc_search_category_id();
?>

<?php if( $catID && !in_array($catID[0], array(4, 20, 30))) { ?>
<img src="<?php echo osc_current_web_theme_url('images/reklama/nedvizimost_') . $catID[0] . '.gif' ?>" alt="Онлайн1" width="285px"/>
<?php } ?>

Вот этот вариант работает на ура, а id я которые нужно закрыть пропишу, а можно сделать, чтобы наоборот) чтобы прописать, те где нужно показывать?

V
На сайте с 08.12.2015
Offline
5
#7

Попробуйте убрать восклицательный знак перед in_array.

Для "спасибо" ещё кнопка отдельная есть :).

LG
На сайте с 17.01.2014
Offline
42
#8

Супер, спасибо) помогло. приятно пообщаться со знатоками своего дела)

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