<MyRusakov.ru />

Профессия Web-разработчик

Профессия Web-разработчик

Этот комплект за 8 месяцев превратит Вас в Web-разработчика с нуля. Учиться достаточно 1 час в день.

Начнёте Вы с HTML, CSS и вёрстки сайтов. Потом перейдёте к программированию и JavaScript. Затем изучите PHP, MySQL, SQL, Python. Изучите Web-фреймворки Laravel и Django. Создадите 5 своих сайтов для портфолио.

Комплект содержит:

- 540 видеоуроков

- 110 часов видео

- 1205 заданий для закрепления материала из уроков

- 5 финальных тестов

- 7 сертификатов

- 12 Бонусных курсов

Подробнее
Подписка

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

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Какая тема Вас интересует больше?

Форум сайта MyRusakov.ru

Вывод только имеющихся картинок.
22.07.2014 13:09:47 Вывод только имеющихся картинок. Сообщение #1
iorvk90

iorvk90

Новичок

Новичок

Дата регистрации:
17.07.2014 20:33:27

Сообщений: 13

Как сделать чтобы выводились только те картинки которые есть? 
К примеру есть много товаров у которых есть фото, но у некоторых товаров 1 фото, а у некоторых 4.
И с базы выводятся место под фото... 
Профиль
22.07.2014 22:48:46 Вывод только имеющихся картинок. Сообщение #2
(Алекс)

(Алекс)

Эксперт

Эксперт

Дата регистрации:
21.06.2013 14:56:26

Сообщений: 114

Перед тем, как вставлять в HTML-код адреса картинок  из БД, проверьте (с помощью функции count()) массив с адресами через PHP и после уже потом вставляйте на страницу не адрес, а сразу тег с очередным адресом.
Профиль
23.07.2014 12:39:59 Вывод только имеющихся картинок. Сообщение #3
iorvk90

iorvk90

Новичок

Новичок

Дата регистрации:
17.07.2014 20:33:27

Сообщений: 13

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

<img src="<?=$this->product["img"]?>" alt="<?=$this->product["title"]?>"/>
<img src="<?=$this->product["img1"]?>" alt="<?=$this->product["title"]?>"/>
<img src="<?=$this->product["img2"]?>" alt="<?=$this->product["title"]?>"/>
<img src="<?=$this->product["img3"]?>" alt="<?=$this->product["title"]?>"/>

Но иногда есть все 4 фото, а иногда меньше, как сделать чтобы не выводилось место под картинку которой нет?
Профиль
23.07.2014 17:19:53 Вывод только имеющихся картинок. Сообщение #4
(Алекс)

(Алекс)

Эксперт

Эксперт

Дата регистрации:
21.06.2013 14:56:26

Сообщений: 114

Просто не создавайте заранее 4 тега для картинок, а выводите их циклом из БД. Примерно вот так:
for ($i = 0; $i < count($this->product); $i++)
echo "<img src='$this->product[".$i."]['img']' alt='$this->product[."$i".]['title']'/>";
Профиль
23.07.2014 18:04:25 Вывод только имеющихся картинок. Сообщение #5
iorvk90

iorvk90

Новичок

Новичок

Дата регистрации:
17.07.2014 20:33:27

Сообщений: 13

Спасибо. Хороший вариант, но не получилось. Выводится еще больше фото
теперь выводится столько фото сколько и товаров на сайте. 
$i < count($this->product) это мы принимаем переменную равную кол-во товаров
Профиль
24.07.2014 10:13:45 Вывод только имеющихся картинок. Сообщение #6
(Алекс)

(Алекс)

Эксперт

Эксперт

Дата регистрации:
21.06.2013 14:56:26

Сообщений: 114

а если попробовать count($this->product["img"])
то есть, чтоб считало кол-во элементов в поле БД
Профиль
24.07.2014 13:51:26 Вывод только имеющихся картинок. Сообщение #7
iorvk90

iorvk90

Новичок

Новичок

Дата регистрации:
17.07.2014 20:33:27

Сообщений: 13

Так тоже пробовал, так вообще ничего не выводится, не одной картинки.
Это вывод картинок через цикл, их нужно где то помещать в массив? 
Профиль
24.07.2014 19:39:52 Вывод только имеющихся картинок. Сообщение #8
shamil

shamil

Продвинутый

Продвинутый

Дата регистрации:
17.03.2013 00:07:27

Сообщений: 53

пустые img не скосить,либо ограничениями,либо заvеной на текст.
 При добавлении фото в комментарий с сервера,был в такойже ситуации.Ограничился  ",без фото error"
Профиль
24.07.2014 20:48:58 Вывод только имеющихся картинок. Сообщение #9
pirogin

pirogin

Новичок

Новичок

Дата регистрации:
15.03.2014 20:50:25

Сообщений: 18

shamil, я с Вами не согласен. Вот функция и вывод только нужного кол-ва  img.<?php
function getImagesOnProduct ($product) {
$mysqli = new mysqli ("localhost", "root", "", "base";
$result_set = $mysqli->query ("SELECT * FROM products WHERE `product_title` = '$product'";
closeDB($mysqli);
          return resultToArray($result_set);
}
function resultToArray($result_set) {
        $results = array();
        while (($row = $result_set->fetch_assoc()) != false) {
            $results[] = $row;
        }
        return $results;
           }
$images = getImagesOnProduct ("produkt";
for ($i = 0; $i < count($images); $i++) {
echo "<img src = '".$images[$i]["src"]."' alt = 'Описание картинки'>";
}
Профиль
28.07.2014 14:29:46 Вывод только имеющихся картинок. Сообщение #10
iorvk90

iorvk90

Новичок

Новичок

Дата регистрации:
17.07.2014 20:33:27

Сообщений: 13

Так тоже не получилось у меня. 
Нашел другой вариант, только еще не знаю как его осуществить.
Раньше я в БД к товару каждому писал img, img1, img2 и т.д.
А если сделать таблицу новую img, и добавлять к products_id  картинки.
В таблице products сделать колонку img_id
Но как это совместить и вывести потом?
Профиль