У меня есть функция поиска участников, в которой вы можете указывать части имен, и возвращаемым значением должны быть все участники, имеющие хотя бы одно имя пользователя, имя или фамилию, соответствующие этому вводу. Проблема здесь в том, что некоторые имена имеют «странные» символы, такие как é
в Renée
, и пользователь не хочет вводить странный символ, а обычную замену ASCII e
.
В PHP я конвертирую входную строку в ASCII, используя iconv (на всякий случай, если кто-то вводит странные символы). Однако в базе данных я также должен преобразовать странные символы в ASCII (очевидно), чтобы строки совпадали.
Я пробовал следующее:
SELECT
CONVERT(_latin1'Renée' USING ascii) t1,
CAST(_latin1'Renée' AS CHAR CHARACTER SET ASCII) t2;
(Это две попытки.) Обе не работают. Оба имеют Ren?e
в качестве вывода. Знак вопроса должен быть e
. Ничего страшного, если он выведет Ren?ee
, так как я могу просто удалить все вопросительные знаки после преобразования.
Как вы понимаете, столбцы, которые я хочу запросить, имеют кодировку Latin1.
Спасибо.