Меню категорий с количеством элементов

M
На сайте с 03.06.2012
Offline
73
434

Здравствуйте, имеется сайт объявлений. Есть множество категорий объявлений. Теперь хочу создать меню с категорий где будет писать сколько объявлений в этой категории с учетом дочерних. Меню самое я создал но возникла сложность с подсчетом количества, поскольку категорий много и я не могу для каждой категории строить запрос в БД (точнее не логично). Думал создать отдельно таблицу куда буду записывать количество объявлений для каждой категории, но тут возникли сложности поскольку есть разного рода фильтры на сайте и количество объявлений должно показываться с учетом этих фильтров. Вот в принципе пример что хотел бы получить (меню слева) http://omsk.24au.ru/auction/ кто что может подсказать? Огромное спасибо за помощь!

[Удален]
#1

Вы мыслите правильно: оптимальным является создания дополнительного параметра для категории, который бы учитывал количество объявлений. При этом не забудьте корректно уменьшать и увеличивать число, при удалении и добавлении, соответственно. Что же касается фильтра, то в указанном Вами примере он никак не влияет на количество записей. Цифра указывает на общее число объявлений.

Но логика, которую Вы преследуете используются во многих интернет-магазинах.

Я советую Вам использовать постоянные параметры для случаев, когда пользователь на использует фильтры и count, когда необходимо учитывать запрос.

M
На сайте с 03.06.2012
Offline
73
#2
teent:
Вы мыслите правильно: оптимальным является создания дополнительного параметра для категории, который бы учитывал количество объявлений. При этом не забудьте корректно уменьшать и увеличивать число, при удалении и добавлении, соответственно. Что же касается фильтра, то в указанном Вами примере он никак не влияет на количество записей. Цифра указывает на общее число объявлений.
Но логика, которую Вы преследуете используются во многих интернет-магазинах.
Я советую Вам использовать постоянные параметры для случаев, когда пользователь на использует фильтры и count, когда необходимо учитывать запрос.

с дополнительным параметром есть проблемы с фильтрами пока не особо понимаю как сделать, но появилась следующая идея, если сделать соединение двух таблиц, категорий и объявлений, с таблицы объявлений выбрать только count, (тут соглашусь что уйдет немного ресурсов), получится выборка будет иметь количество объявлений для категорий и сами свойства категории, а далее выводить в меню эти свойства в блок с определенным классом, и уже с помощью jQuery('ul li .myclass').html() подсчитать количество для родительских категорий. Что скажете по такому методу?

M
На сайте с 03.06.2012
Offline
73
#3

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

PS. Таблицы категорий сделана по Nested set

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий