Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
-3 / 0 / 1
Регистрация: 22.01.2016
Сообщений: 309
1

Не отображать блок при отсутствии информации в БД

13.05.2017, 22:27. Показов 581. Ответов 13
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте. У меня на странице новостей выводиться фотография, но не на всех страницах она есть. Вывожу данные так:
HTML5
1
2
3
<div class="photo">
<img src="/photo/608_406/<?php echo $art_data[0];?>" alt="" />
</div>
в таблице "news" столб "image608_406" это BLOB, в нем картинка. ($art_data[8])
Как сделать, чтобы при отсутствии столба "image608_406" или $art_data[8] не выводились классы вовсе.

Либо фото есть и есть классы, либо его нет и следов. Спасибо за понимание.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.05.2017, 22:27
Ответы с готовыми решениями:

При отсутствии текста в одном блоке скрывать и другой блок
Возможно ли такое на CSS сделать ? Есть два блока. В одном информация статическая, в другом...

Как заставить IE правильно отображать блок ?
Проблема наверное смешная, однако не знаю как ее решить, может подскажет кто? В общем есть 3...

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

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

13
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
14.05.2017, 10:50 2
PHP/HTML
1
2
3
4
5
<?php if(!empty($data[0]) && !empty($data[8])):?>
<div class="photo">
<img src="/photo/608_406/<?php echo $art_data[0];?>" alt="" />
</div>
<?php endif; ?>
?
0
97 / 47 / 17
Регистрация: 25.04.2017
Сообщений: 471
14.05.2017, 12:00 3
Цитата Сообщение от KOPOJI Посмотреть сообщение
?
так круче

PHP
1
<?= !empty($data[0]) && !empty($data[8]) ? '<div class="photo"><img src="photo/608_406/' . $art_data[0] . '" alt=""></div>' : null ?>
Добавлено через 2 минуты
Цитата Сообщение от Karen-Bekker Посмотреть сообщение
не выводились классы вовсе
отменяем или применяем класс

PHP
1
<div class="<?= !empty($data[0]) && !empty($data[8]) ? 'photo' : null ?>">содержимое блока</div>
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
14.05.2017, 12:10 4
Цитата Сообщение от Вилы Выкидные Посмотреть сообщение
так круче
я другого мнения
0
97 / 47 / 17
Регистрация: 25.04.2017
Сообщений: 471
14.05.2017, 12:17 5
Цитата Сообщение от KOPOJI Посмотреть сообщение
?
Цитата Сообщение от KOPOJI Посмотреть сообщение
я другого мнения
я тоже когда-то был такого же, пока не узнал, что давно существуют другие стандарты
0
-3 / 0 / 1
Регистрация: 22.01.2016
Сообщений: 309
14.05.2017, 13:18  [ТС] 6
И не то и не то не работает. Стили скрываются вообще теперь.
0
97 / 47 / 17
Регистрация: 25.04.2017
Сообщений: 471
14.05.2017, 13:22 7
Цитата Сообщение от Karen-Bekker Посмотреть сообщение
И не то и не то не работает. Стили скрываются вообще теперь.
Ваш вопрос - Как сделать, чтобы при отсутствии столба "image608_406" или $art_data[8] не выводились классы вовсе.

Значит условие выполняется

Если нужно условие ИЛИ, то замените && на ||
0
-3 / 0 / 1
Регистрация: 22.01.2016
Сообщений: 309
14.05.2017, 13:36  [ТС] 8
Где то BLOB пустой, где-то BLOG имеет картинку. Я делаю:
PHP
1
2
3
4
5
<?php if(!empty($data[0]) && !empty($data[8])):?>
<div class="photo">
<img src="/photo/608_406/<?php echo $art_data[0];?>" alt="" />
</div>
<?php endif; ?>
и у меня вообще все классы пропадают при любых условиях.
А мне нужно чтобы пропадали, когда в $data[8] BLOBе ничего нет

Добавлено через 4 минуты
Решил ребят, всем спасибо. Решение такое:
PHP
1
2
3
4
5
<?php if(!empty($art_data[8])){?>
<div class="photo">
<img src="/photo/608_406/<?php echo $art_data[0];?>" alt="" />
</div>
<?php } ?>
0
97 / 47 / 17
Регистрация: 25.04.2017
Сообщений: 471
14.05.2017, 14:11 9
Цитата Сообщение от Karen-Bekker Посмотреть сообщение
Решение такое:
нет смысла 3 раза открывать PHP код, достаточно один раз отдать его на растерзание интерпретатору

PHP
1
<?= !empty($data[8]) ? '<div class="photo"><img src="photo/608_406/' . $art_data[0] . '" alt=""></div>' : null ?>
и в одиночном теге img использование закрывающего / не обязательно
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
15.05.2017, 11:49 10
Цитата Сообщение от Вилы Выкидные Посмотреть сообщение
нет смысла 3 раза открывать PHP код, достаточно один раз отдать его на растерзание интерпретатору
верстальщики с вами не согласятся
Цитата Сообщение от Вилы Выкидные Посмотреть сообщение
и в одиночном теге img использование закрывающего / не обязательно
xhtml тоже не согласится с этим
0
97 / 47 / 17
Регистрация: 25.04.2017
Сообщений: 471
15.05.2017, 13:19 11
Цитата Сообщение от KOPOJI Посмотреть сообщение
верстальщики с вами не согласятся
в данном случае мы видим внедрение PHP кода в html разметку

Добавлено через 6 минут
Цитата Сообщение от KOPOJI Посмотреть сообщение
xhtml тоже не согласится с этим
браузеру без разницы, он обработает xhtml в любом случае, как и html
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
15.05.2017, 15:57 12
Цитата Сообщение от Вилы Выкидные Посмотреть сообщение
я тоже когда-то был такого же, пока не узнал, что давно существуют другие стандарты
MVC и т.п. не говорит о том, что нельзя вставлять во view php-код, если вы об этом. Они говорят лишь о минимальных вставках - if, for и т.п., без программной логики в духе создания доп элементов. О других стандартах, где не разрешается подобное, я также не слышал. А вот вывод html через php не рекомендуется нигде, кроме как у "профи" с пхпспб (если верить тому, что это их утверждения)
Цитата Сообщение от Вилы Выкидные Посмотреть сообщение
браузеру без разницы, он обработает xhtml в любом случае, как и html
валидатор-то материться будет. Причем тут браузер?

Добавлено через 4 минуты
Цитата Сообщение от Вилы Выкидные Посмотреть сообщение
давно существуют другие стандарты
можно поподробнее насчет этих стандартов? Желательно вместо со ссылочкой для почитать сказки на сон грядущий
0
97 / 47 / 17
Регистрация: 25.04.2017
Сообщений: 471
15.05.2017, 16:35 13
Цитата Сообщение от KOPOJI Посмотреть сообщение
валидатор-то материться будет. Причем тут браузер?
ну пользуны вообще-то сайты через валидатор не смотрят

Добавлено через 1 минуту
Цитата Сообщение от KOPOJI Посмотреть сообщение
MVC
выдуманный показатель

Добавлено через 9 минут
Цитата Сообщение от KOPOJI Посмотреть сообщение
можно поподробнее насчет этих стандартов
а логикой вы не пользуетесь, прежде чем долбать сервак множеством внедрений в стиле - Что?Где?Когда?

PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
<div>
<?php if($a == $b) {?>
<div class="<?php echo $a; ?>">
<?php echo $b; ?>
</div>
<?php } else {?>
<div class="<?php echo $b; ?>">
<?php echo $a; ?>
</div>
<?php } ?>
</div>
дурдом
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
15.05.2017, 17:07 14
Цитата Сообщение от Вилы Выкидные Посмотреть сообщение
выдуманный показатель
согласен, что ваши стандарты выдуманные.
Цитата Сообщение от Вилы Выкидные Посмотреть сообщение
а логикой вы не пользуетесь, прежде чем долбать сервак множеством внедрений в стиле - Что?Где?Когда?
Какое это имеет отношение к стандартам, которые я так и не увидел? Какая логика? Ну перепишу я код так, и что изменится?
PHP
1
2
3
4
5
6
7
echo '<div>';
if($a == $b) {
echo '<div class="', $a, '">',  $b, '</div>';
} else {
echo '<div class="', $b, '">', $a, '</div>';
}
echo '</div>';
Какой код будет удобнее править верстальщику? Вы переходили по ссылке вообще, смотрели примеры кода в последнем сообщении темы?
Повторно прошу, дайте ссылку на эти псевдостандарты, я хочу их посмотреть - а вдруг я в чем-то ошибаюсь?

Добавлено через 41 секунду
Цитата Сообщение от Вилы Выкидные Посмотреть сообщение
ну пользуны вообще-то сайты через валидатор не смотрят
а сеошники смотрят порой.
0
15.05.2017, 17:07
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.05.2017, 17:07
Помогаю со студенческими работами здесь

Мышь при её отсутствии
На старом (Pentium 1) компьютере у меня мышка оторвана. Мышку такую уже наверное не продают. Как,...

ShowMessage при отсутствии файла
нажатие на кнопку отображает картинку и текст (текст берется из файла) void __fastcall...

INNER JOIN при отсутствии данных
Доброго времени суток. Вопрос именно по запросам. Работаю VBA + Access. Запросы формируются...

Сообщение при отсутствии dll
Здравствуйте. Как сделать системное предупреждении при отсуствии dll подключенных через uses или...

Сообщение при отсутствии данных
Здравствуйте! Подскажите пожалуйста 1. Как правильно прописать условие, если в таблице...

Ситуация при отсутствии переменной
Вот такой простой скрипт: $(document).ready(function() {...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru