[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Упрощенный вложенный поиск рецептов по тегам
linklink26
Собственно смысл сервиса такой, человек указывает у себя в кабинете теги продуктов, и ему должны показаться рецепты на основе имеющихся у него продуктов при условии что продукты рецепта полностью совпадают с имеющимися у человека продуктами в личном кабинете.

Сделал 3 таблицы

таблица obj(все продукты) - тут bro_id(cчетчик), bro_name (тег продукта) ...
user posted image


таблица tag_obj(сопоставление продуктов рецептам) - автоинкрементный link_id (счетчик), link_obJ_(id рецепта), link_tag(id тэг продукта)
user posted image


таблица holodilnik(авторские теги продуктов) h_id(счетчик), h_userid. h_tag(id тэг продукта)
user posted image


Как видно есть рецепты:
форель в собств соку (2-й id рецепта)
форель в белом соусе (1-й id рецепта)

У юзера есть продукты: форель, белый соус.

Нужно как-то обработать все это дело и выдать эти 2 рецепта, но если у человека нет хоть одного ингредиента(например зеленого горошка link_tag =3), все, рецепт не показываем.

Я сначала пробовал делать так:

SELECT * FROM `tag_obj` WHERE `link_tag` IN (1, 2);

Затем в цикле по каждому рецепту искал количество записей и сопоставлял с продуктами пользователя, но оно либо смешивалось со всем остальным либо показывало рецепты не смотря на то что продуктов не хватает, там такая каша что даже код писать не буду, может есть более простые решения без циклов?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.