Перечень продуктов OSCommerce показывает неточное количество и результаты на странице - PullRequest
0 голосов
/ 09 февраля 2010

http://www.roguevalleyroses.com/rose_list.php?search_id=&class=&height=&growth=&color=&bloom_size=&bloom_type=&shade=&fragrance=&disease=&rebloom=&thorns=&zone=&hybridizer=Ashdown%20Roses&date_range=&text=&view=&show=&page=4

Это страница. Код, который запрашивает результаты, находится здесь: http://pastebin.com/d51bfa53f

Я не могу понять, как работает OSCommerce. Позвольте мне знать, если вам нужно что-нибудь еще. Кроме того, это обычная проблема в SQL-запросах, циклах PHP или в какой-то математической ошибке? Я надеюсь, что меня укажут в правильном направлении, не обязательно требуя точного ответа, поскольку это взломанная / нестандартная OsCommerce.

Ответы [ 2 ]

2 голосов
/ 25 мая 2015

Проблема в предложении «group by», с которым не может иметь дело код osCommerce - в файле класса splitResults. Некоторое время боролся с этим, и это была моя первая попытка исправить это:

if (strpos($sql_query, 'group by')) {
    $reviews_count_query = tep_db_query("select count(*) as total from (select count(*)" . substr($sql_query, $pos_from) .") as GroupedResult");
} else {
    $reviews_count_query = tep_db_query("select count(*) as total " . substr($sql_query, $pos_from, ($pos_to - $pos_from)));
}
//$reviews_count_query = tep_db_query("select count(*) as total " . substr($sql_query, $pos_from, ($pos_to - $pos_from)));

Однако при дальнейшем тестировании это тоже не работает должным образом. Затем я потратил некоторое время на то, чтобы понять, что именно происходит, и обнаружил, что подобный код уже существует в oscommerce на https://github.com/osCommerce/oscommerce2/blob/bda6f6df3e4ab027b72ecfe6a96ac70b6774b312/catalog/admin/stats_customers.php#L40-L45

Здесь вы можете видеть, что класс splitpageresults - это выражение «group by» ... а затем под ним - «исправление» для помещения исправленного количества клиентов в запрос numrows. И этот запрос затем присваивается splitpageresults, чтобы получить «показ результатов x из y».

1 голос
/ 03 марта 2010

Не думаю, что это спам.

это распространенная проблема с oscommerce. Пользовательские вклады esp добавляют больше проблем, когда речь идет о запросах. Класс навигации oscommerce не поддерживает использование отдельных или групповых предложений ... то есть, когда он считает для записей он не учитывает эти ключевые слова .. вам нужно изменить класс результатов для разделенной страницы, чтобы это исправить.

Приветствие Шива

...