Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

Миграция на phpBB и проблема username_clean

Вопросы без привязки к версии. Установлена авточистка (2 года).
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
goroba
phpBB 1.0.0
Сообщения: 2
Стаж: 6 лет 2 месяца

Миграция на phpBB и проблема username_clean

Сообщение goroba »

При миграции форума с легаси-системы на phpBB (3.2.1 в данный момент) мы столкнулись с несовместимостью старой и новой систем управления пользователями. utf8_clean_string() - это конечно классно и любители заменять символы кириллицы на визуально схожие латинские символы (и наоборот) узнали, по чём фунт лиха, но слов из песни не выкинешь, как и пользователей из форума.
При запуске bin/phpbbcli.php user:resync из консоли постоянно выплывают ошибки с уникальностью значений username_clean (например, для 'Серега' и 'Cepera').
Изменять username/удалять пользователей нам не хотелось, логичным решением было бы вмешаться в логику работы utf8_clean_string(), кастомизировав ее под нужды старых пользователей. И тут казалось бы, Symfony Components, все должно быть SOLIDно, но в данной ситуации мы никак не можем найти гибкое решение: диспетчер не бросает никаких событий, на которые можно было бы подписаться; сервис через DI тоже не подменить, необходимая функция вообще существует за рамками контейнера. Неужели остается только одно - правка вендорского кода? Может я что упустил и есть возможность решить issue более гибким способом?
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 17 лет 1 месяц
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2752 раза
Контактная информация:

Re: Миграция на phpBB и проблема username_clean

Сообщение Sheer »

[3.1][3.2] [dev] STK for phpBB 3.1.x & 3.2.x
Sheer писал(а): 23.12.2014 21:53Пересоздание очищенных имён пользователей - Сброс записей username_clean в таблице пользователей базы данных.
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
goroba
phpBB 1.0.0
Сообщения: 2
Стаж: 6 лет 2 месяца

Re: Миграция на phpBB и проблема username_clean

Сообщение goroba »

Спасибо, но Ваш ответ проблему не решает, а лишь подтверждает ее существование.
Файл /tools/support/reclean_usernames.php - во многом копипаст указанной мною (сорри, чуть неверно) консольной команды bin/phpbbcli.php user:reclean. Доходя до пользователя с дублирующимся username_clean STK выдает ошибку с алиасом USER_ALREADY_EXISTS.
Суть проблемы: пользователи со старого форума при миграции получают одинаковые username_clean, а мне их надо как-то развести, без удаления пользователей или редактирования их username.
Видимое решение - вмешаться в работу utf8_clean_string() и кастомно формировать username_clean для них. Но не получается сделать это гибко, без редактирования вендорского кода. Возможно я что-то упустил из виду и такая возможность есть, а может есть еще какое-либо решение проблемы?
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

Re: Миграция на phpBB и проблема username_clean

Сообщение rxu »

goroba, облегчу страдания. Без правки кода ядра ваше желание не исполнится.
Изображение
Аватара пользователя
Kuskow
phpBB 1.4.4
Сообщения: 158
Стаж: 7 лет 10 месяцев
Откуда: Караганда
Благодарил (а): 24 раза
Поблагодарили: 15 раз
Контактная информация:

Re: Миграция на phpBB и проблема username_clean

Сообщение Kuskow »

Вот и я столкнулся с этой username_clean. Еле как нашёл, почему это у меня неправильно сортируются пользователи по никам. Оказывается, при сортировке по этому полю все, кто на Б ставятся раньше тех, кто на А, потому что Б преобразована в цифру 6 (шестёрку).

Если сделать Пересоздание очищенных имён пользователей - Сброс записей username_clean в таблице пользователей базы данных - это поможет?
Ответить

Вернуться в «phpBB-пространство»