一連のキーワードに基づいて、データベースで名前検索を実行する必要があります。結果は、アクセントを区別し、大文字と小文字を区別しない必要があります。
ここで見つけたソリューションに加えて、大文字と小文字を区別しないようにするためのいくつかの変更に従って、次のコードを使用しました。
$sql = "SELECT name FROM table_names WHERE LOWER(name) LIKE _utf8 '%".strtolower($keyword)."%' COLLATE utf8_bin";
検索キーワードにアクセントが含まれている場合、これは機能しません。しかし、奇妙なことに、このクエリはphpMyAdminでうまく機能します(しかし、これは信頼できないはずだとどこかで読みました)。ここで何が問題になる可能性がありますか?
更新:コードを次のように修正しました:
$sql = "SELECT name FROM table_names WHERE LOWER(name) LIKE LOWER(_utf8 '%$keyword%') COLLATE utf8_bin";
しかし、私はまだ結果がありません。
ありがとう!