我在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) –