我在MySQL数据库中搜索utf8 enocded字符串时遇到问题。我有一个带有用户的社交网站,他们可以为他们的个人资料添加说明,因为在我的国家我们使用西里尔字母,很明显的是使用UTF8。我有一个搜索轮廓的描述搜索领域,它是这样的:在mysql中搜索utf8 enocded字符串,显示相同但utf代码不同
SELECT usr.* FROM user AS usr WHERE usr.city = '{$city}' AND usr.desc LIKE '%{$srch}%'
我在PHP中使用此顺便说一下,在大多数的它的工作情况。问题在于某些搜索结果无法搜索,我发现问题在于某些用户出于某种原因具有某些字母的相同表示(所以字母显示完全相同),但其后面的编码是不一样。例如,文本:
编码,然后写在最常见的方式,同时使用键盘语言支持的大多数操作系统都当'Оптички стакла' = ÐпÑиÑки ÑÑакла
。但是这个字符串的某个用户:
'Oптички стaклa' = OпÑиÑки âÑÑaклa
当用UTF8编码时输出一个不同的代码。因此,搜索不适用于所有情况,我不知道如何解决。我认为我的数据库设置正确,我尝试了很多组合,现在我没有想法。任何帮助,将不胜感激。
在此先感谢。
check [this](http://stackoverflow.com/a/12158207/4595675) –