Запрос Mysql при соединении

#php #mysql

#php #mysql

Вопрос:

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

Таблица сред:

 `media_id`,  `file_title`,  `file_type`,  `file_url`,
  

Таблица Product-Medias:

 `id`, `media_id`, 'product_id`
  

Я пытаюсь получить ВСЕ совпадения из таблицы Product-Media для определенного product_id.

 $query = 'SELECT c.id, pm.file_url FROM `product_medias` c '.
        'INNER JOIN `medias` pm '.
        'ON c.`media_id` = pm.`media_id`'.
        ' AND c.`product_id` = 57 GROUP BY c.id';
  

Проблема, с которой я сталкиваюсь, заключается в том, что я получаю только один результат, даже если в таблице product-media есть несколько изображений для продукта.

пример: Таблица Product-Medias: я получаю только первое совпадение в моем результате…

 (47, 57, 65),
(48, 49, 66),
(51, 57, 70),
(52, 57, 71),
  

Комментарии:

1. @Rahul опубликуйте это как ответ

Ответ №1:

Хорошо, я этого не знал:

 $med_rows = mysqli_fetch_array($result, MYSQL_ASSOC);
  

возвращает только первый результат…

Мне нужно было зациклить результат, чтобы получить их все:

 while ($med_rows = mysqli_fetch_array($result, MYSQL_ASSOC)) {
        $med_row[] = $med_rows; }