【发布时间】:2011-08-17 19:29:55
【问题描述】:
我正在搜索基于在搜索框中输入的字母提供的建议。
示例:
我在数据库中有这个词:
salam, salavat, sabos, sandal, sefid, siah and ...
我在搜索框中输入了:s--显示这个 话-->salam, salavat, sabos, sandal, sefid, siah
现在如果 输入:sa--显示这个词-->salam, salavat, sabos, sandal,
如果输入:sala--显示这个词-->salam, salavat
如果输入:salam--显示此字词-->salam
我正在使用 jQuery 事件 .keyup()(keyup 工作正常)并在后端使用 codeigniter(在 codeigniter 中查询不是我想要的)。
查看我的查询(在此查询中,$find 包含已输入的序列,我使用like 关键字在数据库中搜索):
$find = $this->input->post('find');
$where = "date LIKE '$find' OR
name LIKE '$find' OR
star LIKE '$find' OR
address LIKE '$find' OR
number_phone LIKE '$find' OR
type LIKE '$find' OR
service LIKE '$find' OR
units LIKE '$find' OR
useradmin LIKE '$find'";
$query = $data['results'] = $this->db->query("SELECT @rownum:=@rownum+1 rownum, t.*
FROM (
SELECT *
FROM my_table
WHERE
$where
ORDER BY id desc
LIMIT $offset, $coun_page
) t,
(SELECT @rownum:=0) r");
以下查询有效,但由于rownum,我无法使用它:
$this->db->order_by("id", "desc")->like('name', $name)->get('my_table')
如何通过rownum 获得建议?
【问题讨论】:
标签: php codeigniter search where