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

[FAQ] Преобразование паролей при конвертации из phpbb2

Темы по наиболее часто задаваемым вопросам без привязки к версии phpBB. Читать в первую очередь!
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB 3.1.x/3.2.x/3.3.x | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
Siava
Поддержка
Поддержка
Сообщения: 4963
Стаж: 17 лет 4 месяца
Откуда: Питер
Благодарил (а): 153 раза
Поблагодарили: 658 раз

[FAQ] Преобразование паролей при конвертации из phpbb2

Сообщение Siava »

При конвертации из phpbb2 в phpbb3.3 пароли, содержащие кириллицу, не конвертируются корректно и не подходят в новом форуме.
За основу взят хак из этого поста: Re: [FAQ] Преобразование паролей при конвертации

Перед конвертацией базы в phpbb3.3 внести изменения в файл нового форума:
phpbb/passwords/driver/md5_phpbb2.php

найти:

Код: Выделить всё

			if ($this->helper->string_compare(md5($password_old_format), $hash) || $this->helper->string_compare(md5(\utf8_to_cp1252($password_old_format)), $hash)
				|| $this->salted_md5->check(md5($password_old_format), $hash) === true
				|| $this->salted_md5->check(md5(\utf8_to_cp1252($password_old_format)), $hash) === true)
заменить на:

Код: Выделить всё

			if ($this->helper->string_compare(md5($password_old_format), $hash) || $this->helper->string_compare(md5(\utf8_to_cp1252($password_old_format)), $hash) || $this->helper->string_compare(md5(iconv('utf-8','windows-1251',$password_old_format)), $hash)
				|| $this->salted_md5->check(md5($password_old_format), $hash) === true
				|| $this->salted_md5->check(md5(\utf8_to_cp1252($password_old_format)), $hash) === true
				|| $this->salted_md5->check(md5(iconv('utf-8','windows-1251',$password_old_format)), $hash) === true)
Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb 2.0.x, 3.1.x 3.5.x)

Вернуться в «FAQ»