Название: ї/і Отправлено: Efendy от 05 Марта 2021, 22:05:30 Некоторое время назад заметил такую особенность: при поиске в NoDeny считает украинские буквы "ї" и "і" одинаковыми. Для примера, сделайте поиск по фрагменту "ї" и в результате будет искать и те поля, в которых "ї"может и не быть, но будет "і".
В инете есть решения на эту тему. В частности там предлагают заменить COLLATE на utf8_unicode_ci. Это, грубо говоря, правила, по которым происходят сравнения. По дефолту (в доках и кажется в коде) указано utf8_general_ci, что и есть проблемой. Я попытался изменить utf8_general_ci на utf8_unicode_ci в 1) конфиге mysql сервера 2) в файле Db.pm 3) конкретно у базы данных NoDeny 4) конкретно у таблицы data0 (в ней хранятся допполя) Не помогло. Кстати, может вам поможет, может это от версии mysql зависит. Лично мне помогло изменение COLLATE у конкретного поля data0. Вот такой командой можно посмотреть параметры таблицы: Код: show create table data0; Код: CREATE TABLE `data0` ( Код: alter table data0 change `_adr_city` `_adr_city` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL DEFAULT ''; Конечно предварительно нужно сделать бекап базы данных. Его нужно делать при любых изменениях. Я, кстати, не делал) Возможно вам помогут и более простые действия: Код: ALTER DATABASE nodeny CHARACTER SET utf8 COLLATE utf8_unicode_ci; Название: Re: ї/і Отправлено: gen PSI от 31 Марта 2021, 12:40:13 Спасибо за решение.
Название: Re: ї/і Отправлено: Jovani от 01 Апреля 2021, 11:12:43 Точно так с русской и украинской "е" / "є"
|