Я выполняю поиск с предложениями на основе букв, введенных в поле поиска.
Пример:
У меня в базе данных есть такие слова: 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
?