<MyRusakov.ru />

Создание движка на PHP и MySQL 2.0

Создание движка на PHP и MySQL 2.0

Видеокурс "Создание движка на PHP и MySQL 2.0" научит Вас создавать профессиональные движки для сайтов на PHP и MySQL с использованием ООП и паттерна MVC.

В курсе разобрана вся теория по структуре движка: как всё устроено, какие должны быть объекты, какая у них иерархия и как они взаимодействуют между собой.

В практической части будет создан движок с чистого листа. Будет создано ядро, все адаптеры, все вспомогательные классы, а также классы для работы с объектами базы данных. И чтобы курс был максимально полезным, будет создан движок для сайта MyRusakov.ru.

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

Подписавшись по 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

Сообщений: 51

пустые 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
Но как это совместить и вывести потом?
Профиль Ответить