Сообщение от SERblY
|
мне то всего то надо же слайдер до ума довести
|
И что это значит?
Вы в магазин за покупками ходите? Пришли вы за хлебом, вы же пойдете в отдел хлебобулочных изделий, наберете нужное сразу узнав и цены. Вы же не станете носиться по всем отделам магазина ради узнать цены всех товаров, да и вообще вас не будет интересовать, что еще в нем продается.
И это ведь очевидно, и вообще не имеет отношения к программированию.
Представьте, что вместо привычных отделов различных групп товаров вы увидите один отдел, где все товары свалены в кучу, причем каждая группа товаров впихнута в маленькую коробку, в которой сложно найти нужное, и этот единственный отдел длиною в 500 метров. Вам удобно будет купить нужное?
Это ведь тоже очевидно, и языками тут и не пахнет. И магазины делают все, чтобы покупателю удобно было ориентироваться в товарах, причем искусство их разложить, это еще и уловка заставить покупателя купить.
Вы хотите организовать интернет торговлю, и прежде чем охать по поводу незнания JS, вам придется решить множество проблем связанных с привлечением покупателей, а это и удобство представление товаров на страницах, их выбор, поиск, ... JS на данном этапе даже рядом пока не валяется.
Ваш магазин предлагает от жевательных резинок за 5 руб до черной икры за 50000 руб, и вы все товары свалили в кучу. Удобно ли будет покупателю уже интернет магазина купить чтобы либо у вас, или же так же, очевидно, нет, как и выше в реальном магазине? А то что слайдер цен в данном случае вообще бесполезен, уже говорилось.
Javascript появляется на горизонте тогда, когда на сервере есть грамотная организация магазина, представление его товаров и прочее. Клиент запрашивает нужное, JS используя данные данные ему серверов обеспечивает удобный сервис для клиента, вашего покупателя.
Если магазин имеет грамотную организацию, значит у него есть отделы (не важно, что магазин виртуальный, подход тот же самый, что и в реальном) - бакалея, ХБ изделия (не обмундирование), консервы, ... Равноценно как вы придя за хлебом в реальный магазин, идете в отдел хлебобулочных изделий, так и в виртуальном магазине покупатель должен иметь возможность посещения нужного отдела магазина. Это обеспечивается меню. Но такой же доступ к разделам должен быть и при поиске товаров. А это значит, что сперва покупатель выбирает категорию товаров, затем задает диапазон цен. Вот тут уже работа JS - получить данные представленные сервером по ценам категорий товаров, чтобы инициализировать слайдер на диапазон крайних цен выбранной пользователем категории товаров.
Вот что должен отдать сервер клиенту:
var prop_range = {
'1' : {'min': 50, 'max': 600, 'step': 60},
'2' : {'min': 2800, 'max': 13700, 'step': 200},
....
}
где 1 и 2, это ID категорий товаров, которые являются значениями списка категорий в фильтре. И под ними как ключами мин/макс цены товаров полученные запросом к базе в соответствующей категории товаров. А шаг рассчитывается делением макс значения на 10/100/1000... в зависимости от знаков макс значения, с округлением.
Запрос по фильтру, это выдача покупателю найденных (или нет) товаров, с сохранением в фильтре набора. То есть, если был сделан запрос по фильтру, то список должен отображать выбранную категорию, а слайдер цен должен инициализироваться не только по значениям этой категории, но и отображать то состояние, в которое его установил пользователь.
Вот это называется "довести до ума". Чем вы там торгуете, одна ли группа товаров и почему 0 руб, это идеально, только богу и вам известно. Если так надо, то тему можно закрыть. Если нет групп товаров, и все едино, а нужно только мин и макс, то делайте запрос в базу, получайте эти значения, передавайте их в шаблонизатор, и закрывайте тему.