php搜索中的mysql查询(仅限邮政编码的第一部分)

时间:2014-02-12 12:33:16

标签: php mysql map

我使用以下查询来显示搜索栏中的结果

$query = 
"SELECT * FROM $usertable WHERE 
    ($postcodelist LIKE '%$search%' 
      OR $city LIKE '%$search%') 
    AND $office <> ''  
    GROUP BY $office";

如果我输入LS19或Leeds,它会显示利兹办公室的详细信息,因为我的邮政编码列表最多为4位

但是,如果我搜索LS19 6BR(我的完整邮政编码),它没有显示任何内容,因为这与邮政编码列表完全不符。

我需要以某种方式搜索用户输入的部分,然后输入邮政编码,但不是当他们进入城市时。例如。

这可能吗?

由于

1 个答案:

答案 0 :(得分:2)

由于您有2个字段的1个搜索字词,这很棘手。我会考虑将它分成2个搜索字段。但是,除非我愿意这样做:

$postcodesearch = substr($search,0,4);
$query = 
"SELECT * FROM $usertable WHERE 
   ($postcodelist LIKE '%$postcodesearch%' 
     OR $city LIKE '%$search%') 
   AND $office <> ''  
   GROUP BY $office";