Всем привет! Есть к примеру дерево категорий:
- транспорт (1)
-- автомобили (2)
--- легковые (5)
--- грузовые (3)
-- мотоциклы (4)
--- спорт (7)
--- кросс (6)
В скобках - это условные ID категории
Предположим пользователь открыл категорию с ID = 1 (транспорт).
Как в этом случае вывести все товары которые находятся в этой категории и во всех дочерних по дереву? Ведь товар хранит в себе только ID той категории в которой он находится непосредственно. т.е. если товар лежит в категории "грузовые", то в таблице `ads` в поле `category_id` хранится цифра 3.
Я думал рекурсивно получить все категории под ID 1 потом их подкатегории потом следующих и т.д. Собрать это все в один массив, прогнать его через
$tree_category = implode(',', $array_cats);
и вытащить примерно таким запросом:
SELECT * FROM `ads` WHERE `category_id` IN($tree_category);
Но это все ерунда наверное? куча запросов и одному богу известно сколько там получится запятых в
$tree_category