如何实现类似百度搜索提示的效果

14ce36d3d539b600fbe9a013e950352ac65cb76b

用PHP+Mysql的方式来举个例子:

一、进行拼音转换

        首先要建立一个关键词库。这库具体内容就是自己找了,然后导入到一个表里。

        然后用程序将表里的关键词首字母、全拼转换成拼音后一一对应到表里存储。

        拼音转换可以参考我另两篇转载:

http://fykknd.blog.51cto.com/3175618/1716608

http://fykknd.blog.51cto.com/3175618/1716606


二、对比查询

        在输出查询页面前,将库中关键词的内容按拼音索引并排序(mysql有按拼音排序功能,如果是utf8的字段用 ORDER BY CONVERT( your_sort_field USING gbk ) ;)读到变量里,按拼音顺序排序好。然后在页面搜索框输入时,键入一个汉字或者字母就用ajax的方式到变量里逐字符对比查询。如果用户输入纯英文,就跟汉字首字母比较。输入汉字就转成拼音后进行对比。然后符合的就通过ajax返回给页面显示在搜索框的下拉框里。


注:本文参考来源

http://zhidao.baidu.com/question/419266348.html

你可能感兴趣的:(PHP,下拉框搜索)