我想我发现了一个错误 opencart 因此,在特色模块中,有一个自动完成框可以建议产品,但它似乎跳过了一大堆。检查代码后,看起来一切都归结为以下数据库查询:

SELECT * 
FROM calcproduct p 
LEFT JOIN calcproduct_description pd ON (p.product_id = pd.product_id) 
WHERE pd.language_id = '1' AND LCASE(pd.name) LIKE 'ti %' 
GROUP BY p.product_id 
ORDER BY pd.name ASC LIMIT 0,20

例如,当我手动运行查询时,我有两种产品:

TI | 83 | Brand New
TI | 83 | Like New

它只找到其中​​之一,并且对其他产品也这样做。有谁知道为什么会发生这种情况?

它必须是查询的类似部分,我取出了 group by 和 order by 甚至第一个 where 子句。我尝试更改该列 utf_8latin_1.

enter image description here

enter image description here

enter image description here

有帮助吗?

解决方案 2

我发现那些未显示的产品名称前面有一个空格

其他提示

如果说 83 是 p.product_id 字段,那么您只能得到这两行之一。任何分组的字段(其中两行或多行具有相同的值)都将折叠成一行。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top