我正在为我的网站制作搜索引擎。我有六个select
字段:价格,门数,传输,燃料类型,发动机类型和二氧化碳排放。
我想让搜索引擎的用户尽可能详细地搜索。因此,如果他只选择价格和传输,那么必须搜索价格和传输等。如果他搜索价格,门数和引擎类型,那么必须搜索这3个参数。
所以我认为有6 ^ 6 = 46 656种不同的组合。这对于ifing和其他人来说太过分了..
如果用户未选择任何内容,则select
字段的返回值将为"empty"
。
另外需要注意的是,价格始终设置(最小值为0,最大值为100 000)。
必须有办法将所有这些内容组合成一个查询,对吧?这会让我的生活变得更轻松:)。
你能解释这样做的方式(如果有的话)吗?
答案 0 :(得分:2)
6 ^ 6 = 46 656我不这么认为,如果其他的话,你会做那么多
假设您从POST
获取搜索参数$sql = "select * from table_name where 1=1";
if(isset($_POST['price']))
$sql .= " AND price='".$_POST['price']."'";
if(isset($_POST['numdoors']))
$sql .= " AND numdoors = '".$_POST['numdoors']."'";
//and so on......
所以你有6 if
s