我正在用 HTML、PHP、js 和 MySQL 开发一个网站。在这个网站上,客户将能够浏览我工作的公司销售的产品。由于我们有几种不同的产品,我们需要向客户提供过滤结果的能力(想象一个 eBay 网站)。
该网站做得很好,但我在网站开发方面不是很有经验,所以我在处理过滤器时遇到了麻烦。我需要将参数传递给 php 页面,考虑到问题在于,根据用户使用的过滤器数量,我需要传递不同数量的参数。
考虑以下 sql 语句作为过滤值的示例:
SELECT p.code,
p.price,
p.description
FROM products p
INNER JOIN products_filtervalues pf1
ON pf1.productcode = p.code
AND pf1.idfilter=1
AND pf1.idfiltervalue=45
INNER JOIN products_filtervalues pf2
ON pf2.productcode = p.code
AND pf2.idfilter=2
AND pf2.idfiltervalue=6
INNER JOIN products_filtervalues pf3
ON pf3.productcode = p.code
AND pf3.idfilter=4
AND pf3.idfiltervalue=7
INNER JOIN filtervalues f
ON p.idcategory=1
AND p.idsubcategory=3
AND pf1.idfiltervalue=f.idfiltervalue
AND pf1.idfilter=f.idfilter
LIMIT 0, 15
它工作得很好,但是为了使这项工作能够正常工作,我需要能够插入多个“内连接”行,因为内连接的数量将根据选择的过滤器值的数量而变化。
到目前为止,该网站运行良好,使用 jquery 的 PHP 和 HTML 之间的所有通信都运行良好。所以,问题不在于通信或存在错误,我只需要知道如何解决这种情况。
也许有更好的解决方案,但我现在看不到这一点。请问有人可以帮我吗?