加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

PHP MySQL搜索建议

发布时间:2021-05-22 13:59:23 所属栏目:编程 来源:网络整理
导读:在我的Web应用程序中,将有几个用户.并且他们将自己的内容上传到我的webapp.对于他们上传的每个内容,它都有标题,描述和标签(关键字).我可以编写搜索脚本来搜索内容或用户名.但是当他们给出拼写错误时它们的关键字不会返回任何结果.例如,如果数据库中有一个名

在我的Web应用程序中,将有几个用户.并且他们将自己的内容上传到我的webapp.对于他们上传的每个内容,它都有标题,描述和标签(关键字).我可以编写搜索脚本来搜索内容或用户名.但是当他们给出拼写错误时它们的关键字不会返回任何结果.例如,如果数据库中有一个名为“Michael”的用户并且搜索查询是“Micheal”,那么我应该得到“你是不是要搜索’迈克尔’”,这不过是一个搜索建议.

此建议也应该针对用户上传的内容.用户可以将其内容的标题保持为“迈克尔2011年5月的活动”,并且应该为单个单词生成建议.

最佳答案 您可以使用SOUNDEX搜索类似声音的名称,如下所示:

SELECT * FROM users WHERE SOUNDEX(name) = SOUNDEX(:input)

或者那样

SELECT * FROM users WHERE name SOUNDS_LIKE :input

(完全相同)

编辑:如果您需要使用除Soundex之外的算法,正如Martin Hohenberg建议的那样,您需要在表中添加一个额外的列,例如,sound_equivalent. (这实际上是一种更有效的解决方案,因为可以索引此列).请求将是:

SELECT * FROM users WHERE sound_equivalent = :input_sound_equivalent

然后可以使用PHP算法生成sound_equivalent列的内容,并将其与其余用户参数一起插入表中.

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读