2016-03-05 1 views
0

СУБД: MySQLПоказано Изделия из Mysql PHP

Я проектирование интернет-магазин и нужна помощь в отображении продуктов на странице категории. Скажем, 100 продуктов, и каждый продукт имеет 1-3 изображения.

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

Схема базы данных:

enter image description here

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

Сообщите мне, если вы хотите, чтобы я уточнил дальше. Спасибо заранее!

+0

И с каким кодом вы столкнулись? – k0pernikus

ответ

0

Вы можете использовать функцию Mysql group_concat() Mysql, чтобы получить все изображения за один раз, не дублируя записи. Ниже пример показывает то же самое.

select p.product_id, p.product_name, group_concat(pi.image_path) 
from procuct p join product_images pi on p.product_id = pi.product_id 
group by p.product_id, p.product_name 

Это даст вам все пути в виде списка, разделенного запятыми, вместе с каждой записью продукта.

1

Записи два отдельных запросов для извлечения данных из базы данных: -

  1. Fetch всех продуктов из базы данных, а затем отобразить их на страницу
  2. Второго запроса: Fetch изображения, основанное на ProductID. Если вы хотите что-то придумать, вы можете использовать java-скрипт для поворота изображений.

Сообщите мне, если вам нужна дополнительная помощь. Спасибо!

+0

Спасибо за ваш ответ! – thefakeslimshady

+0

Добро пожаловать :) – Kamamba

0

Используйте этот запрос:

select products.*,GROUP_CONCAT(image_path) 
form products 
LEFT JOIN product_images on products.product_id = product_images.product_id 
GROUP BY product_images.product_id 

Вы получите результат продуктов с запятыми изображения затем взрываются те разделенные запятой изображения в PHP и отобразить его.

Смежные вопросы