Живой поиск Ajax с данными из базы данных

Я видел несколько (хорошо объясненных) примеров, в которых доступные результаты поиска в реальном времени находятся в файле xml. Но только несколько (плохо объясненных), где результаты поступают из базы данных. Меня интересует второй случай.

Одним из решений может быть предварительная выборка данных из базы данных и помещение их в объект xml, а все остальное может работать таким же образом. И это то, что я могу легко реализовать.

Я ищу другой способ, когда пользователь вводит букву (например, «с»), а предложения генерируются на месте (например, «морковь», «капуста», «сельдерей», «цитрусовые»). Будет ли это достигнуто с помощью вызова базы данных, например

"SELECT name FROM vegetables WHERE name LIKE c%"?

А что, если пользователь затем нажмет другую букву? (например, «ca», поэтому рекомендуемые результаты должны быть «морковь», «капуста»). Каждая нажатая клавиша должна инициировать новый SELECT? Почему-то это не кажется хорошим решением.

Есть ли способ достичь этого второго метода?


person Orestes Echo    schedule 12.12.2012    source источник
comment
Это обычный процесс. Обязательно используйте подготовленный оператор и стерилизуйте ввод.   -  person ethrbunny    schedule 12.12.2012
comment
О, вы имеете в виду последовательные SELECT? Спасибо, попробую. :)   -  person Orestes Echo    schedule 12.12.2012
comment
Я опубликовал пример этой точной вещи ранее [ЗДЕСЬ][1] [1]: stackoverflow.com/a/13830962/1880925   -  person ROY Finley    schedule 12.12.2012
comment
Спасибо, Рой. Ваш ответ попал в точку!   -  person Orestes Echo    schedule 13.12.2012


Ответы (1)


Вы можете добиться этого, отправив запросы ajax для каждой функции нажатия клавиши в jquery. В ответ отправьте результаты в формате json, чтобы отобразить их в неупорядоченном списке под текстовым полем. При нажатии кнопки li этого заполните текстовое поле значением в текстовом поле.

person Viswanath Polaki    schedule 21.10.2013