#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; }