Арифметическая логика

Сделайте подзапрос перед запросом с теми же условиями: — SELECT COUNT(`id`) as cnt FROM ...
И потом второй — если cnt меньше limit, то...
да вот в том-то и дело,что не допру какое условие должно быть в $data['start']...потому как Limit может быть 10/25/50/75/100,а товаров может может быть сколько угодно от 1 и выше,да и есть все входные данные,зачем еще запросы
 
Вам нужно отключить вывод страниц, если все товары помещаются в одной. Для этого вам нужно сравнить общее количество товаров с количеством товаров на странице. Можете добавить дополнительное поле в запрос с выборкой count(id) as cnt например. А уже в шаблоне проверять:
if ($data['cnt'] < $data['limit'])
 
Можете добавить дополнительное поле в запрос с выборкой count(id) as cnt например. А уже в шаблоне проверять:
if ($data['cnt'] < $data['limit'])
Не отдельное поле, а подзапрос перед этим, иначе может быть неправильный результат.
Это и работать быстрее будет, чем одним запросом.
Я вообще не понимаю, как он пагинацию делает, если не знает сколько объектов в выборке. Сколько у меня есть страниц, где используется пагинация — всегда сначала получаю количество, потом выборку.
 
Не отдельное поле, а подзапрос перед этим, иначе может быть неправильный результат.
Это и работать быстрее будет, чем одним запросом.
Я вообще не понимаю, как он пагинацию делает, если не знает сколько объектов в выборке. Сколько у меня есть страниц, где используется пагинация — всегда сначала получаю количество, потом выборку.
я не делаю пагинацию,все это есть в опенкарт уже,я лишь прикрутил к этому делу аякс,есть все данные и кол-во товаров в категории и др,но вот с этим $data['start'] $data['limit'] не разберусь,может я фигово изъясняюсь и вы не поняли моей проблемы?
 
Назад
Сверху