搜索引擎使用php和mysql,六个字段组成一个查询?

时间:2012-05-06 14:42:59

标签: php mysql search-engine

我正在为我的网站制作搜索引擎。我有六个select字段:价格,门数,传输,燃料类型,发动机类型和二氧化碳排放。

我想让搜索引擎的用户尽可能详细地搜索。因此,如果他只选择价格和传输,那么必须搜索价格和传输等。如果他搜索价格,门数和引擎类型,那么必须搜索这3个参数。

所以我认为有6 ^ 6 = 46 656种不同的组合。这对于ifing和其他人来说太过分了..

如果用户未选择任何内容,则select字段的返回值将为"empty"

另外需要注意的是,价格始终设置(最小值为0,最大值为100 000)。

必须有办法将所有这些内容组合成一个查询,对吧?这会让我的生活变得更轻松:)。

你能解释这样做的方式(如果有的话)吗?

1 个答案:

答案 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