Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP编码一个价格比较工具_Php_Mysql - Fatal编程技术网

PHP编码一个价格比较工具

PHP编码一个价格比较工具,php,mysql,Php,Mysql,这是我第一次开发你们都知道的这种工具(根据价格和/或选项比较物品的可能性) 既然我从来没有这样做过,我想告诉我你对我的看法: 在数据库上,我们将有: offer / price / option 1 / option 2 / option 3 / IDseller / IDoffer best buy / 15$ / full FTP / web hosting / php.ini / 10 / 1 .../..../.... 以及客户提出的请求: "SELECT * FROM offers

这是我第一次开发你们都知道的这种工具(根据价格和/或选项比较物品的可能性)

既然我从来没有这样做过,我想告诉我你对我的看法:

在数据库上,我们将有:

offer / price / option 1 / option 2 / option 3 / IDseller / IDoffer
best buy / 15$ / full FTP / web hosting / php.ini / 10 / 1
.../..../.... 
以及客户提出的请求:

"SELECT * FROM offers WHERE price <= 20 AND option1 = fullFTP"; 

“从报价中选择*WHERE price为避免显示多个卖家,请在WHERE子句后使用GROUP BY功能

"SELECT * FROM offers WHERE price <= 20 AND option1 = fullFTP"; 

“从price中选择*您想阅读的关于数据库规范化和第三标准格式的信息

您可能还需要为行添加时间戳,并在查询中包含这些范围

您应该将选项移动到单独的表中,并在关联表中使用交易聚合选项

选项(id、说明)

卖家(id、姓名、描述等)

报价(id、卖方id、标题、说明、价格、输入日期、开始日期、结束日期)

提供选项(提供id、选项id)

这会让你离你需要的地方更近,也会让事情变得更容易


接下来。。。SQL连接,为什么不使用ApacheLucene来实现前端功能呢?这些是在PHP中提供Lucene功能的Zend库

继续将数据存储在数据库中,但也将其导出为Lucene索引


好的,这是价格比较,但对期权来说是有意义的。只需将所有选项放在一个字段中,例如用逗号分隔,然后使用文本搜索

如果您不希望该卖家多次显示,请在SQL中使用“GroupbyIDSeller”