Я пытался найти что-то похожее на мою проблему, но я всегда нахожу противоположную ситуацию ...
Вот предложение (любая помощь приветствуется):
Моя база данных (innodb)установлен в UTF8.В основном все (на стороне сервера, на стороне клиента, в базе данных, в соединении и т. Д.) Установлено на UTF8 и UTF8 параметры сортировки general_ci ...
Что я понимаю, так это то, что general_ci делает его нечувствительным к регистру, но также делает акцент-insensitive.
В то время как в phpmyadmin запрос что-то вроде 'a' = 'á' приводит к true ("1"), попытка запросить имя с ударением из формы php с другого сайта просто приводит к "0 ".
Вопрос в том, как выполнить выбор с помощью php-формы, который делает все нечувствительным (как melee = mélee, jose = JOSÉ и т. Д.)?
Все установлено на UTF8,включая php заголовки, "SET NAMES ('utf8')" и все те, которые установлены в my.cnf .... У меня также есть "accept-charset =" utf-8 "" в моем теге формы, но это такработает: - "jose" дает мне только записи "jose%" ... - если я хотел найти JOSÉ, я не могу просто запросить "jose", последний É "должен" быть точно в верхнем регистре с ударением (например,josÉ или JOSÉ), но ничего не найду, если я попробую выбрать "josé" ....
Все они находятся в utf8_general_ci, "покажите переменные наподобие '% character%'" и получите все UTF8 ...
Имена правильно хранятся в базе данных (с символами UTF8 ипри просмотре на странице значения отображаются правильно), я могу сравнить "a" и "Ã" через SQL в phpmyadmin без проблем, они возвращают true ... Это просто не будет работать, когда я использую форму иподключение к этой базе данных ... Письма нечувствительны к регистру, верно, но акценты не (даже не чувствительны к регистру), есть идеи, почему это так?
Как должна быть моя php-форма, чтобы "отправить "как регистр, так и нечувствительные к акценту строки?