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

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

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
parfenov
phpBB 1.2.1
Сообщения: 26
Зарегистрирован: 26.05.2007 8:22

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

Сообщение parfenov » 30.10.2007 9:15

Вопрос:
Добрый день. Конвертировал базу 2.0.22 в RC7. После этого некоторые пользователи при вводе пароля получают такую фразу:
При обновлении конференции не удалось преобразовать ваш пароль. Вы можете запросить новый пароль. Если вы продолжаете испытывать трудности, то свяжитесь с администратором конференции.
Если в админке поменять данному пользователю пароль вручную, или поменять его ник на другой, это не помогает. Принудительное повторное подтверждение активации тоже ничего не меняет.

Ответ:
Такая ошибка существует по крайней мере в phpBB3RC7. Для исправления:
Открыть includes/ucp/ucp_activate.php
НАЙТИ

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

if ($update_password)
        {
            $sql_ary = array(
                'user_actkey'        => '',
                'user_password'        => $user_row['user_newpasswd'],
                'user_newpasswd'    => ''
            );

            $sql = 'UPDATE ' . USERS_TABLE . '
ЗАМЕНИТЬ НА

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

if ($update_password)
        {
            $sql_ary = array(
                'user_actkey'        => '',
                'user_password'        => $user_row['user_newpasswd'],
                'user_newpasswd'    => '',
                'user_pass_convert'     => 0,
            );

            $sql = 'UPDATE ' . USERS_TABLE . '
Затем выполнить следующий SQL-запрос:

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

UPDATE `phpbb_users` SET `user_pass_convert` = '0'
(измените префикс phpbb_ на соответствующий вашему форуму).

boriss
phpBB 1.4.2
Сообщения: 56
Зарегистрирован: 09.11.2005 22:44

Сообщение boriss » 13.01.2008 21:21

Хочу поделиться своим опытом по решению данной проблемы.
При конвертации, нужно выбрать английский язык, тогда всё конвертируется без проблем и старые пассы работают.
http://audi-club.ee - Русский форум Ауди в Эстонии!

Parshuto

Сообщение Parshuto » 07.03.2008 19:24

англ. язык где выбрать? В конвертовалке или в старом форуме?

Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2181
Зарегистрирован: 16.12.2007 14:01
Откуда: Павлодар
Благодарил (а): 7 раз
Поблагодарили: 338 раз
Контактная информация:

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

Сообщение nissin » 28.12.2008 21:52

После конвертации форума не работают пароли на кириллице.
Предлагаю небольшой хак для решения проблемы.
файл includes/auth/auth_db.php
Найти:

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

		set_var($password_new_format, stripslashes($password_old_format), 'string');
Заменить:

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

		set_var($password_new_format, stripslashes($password_old_format), 'string', true);
Найти:

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

			if ((strlen($row['user_password']) == 34 && (phpbb_check_hash(md5($password_old_format), $row['user_password']) || phpbb_check_hash(md5(utf8_to_cp1252($password_old_format)), $row['user_password'])))
				|| (strlen($row['user_password']) == 32  && (md5($password_old_format) == $row['user_password'] || md5(utf8_to_cp1252($password_old_format)) == $row['user_password'])))
Заменить:

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

			if ((strlen($row['user_password']) == 34 && (phpbb_check_hash(md5($password_old_format), $row['user_password']) || phpbb_check_hash(md5(utf8_to_cp1252($password_old_format)), $row['user_password']) || phpbb_check_hash(md5(iconv('utf-8','windows-1251',$password_old_format)), $row['user_password'])))
				|| (strlen($row['user_password']) == 32  && (md5($password_old_format) == $row['user_password'] || md5(utf8_to_cp1252($password_old_format)) == $row['user_password'] || md5(iconv('utf-8','windows-1251',$password_old_format)) == $row['user_password'])))
После этого пароли на кириллице воспринимаются нормально.
Для работы требуется поддержка iconv в php (как правило обычно включена).
Всё повторяется. nurlan.info

mazurik
phpBB 1.0.0
Сообщения: 1
Зарегистрирован: 04.04.2012 13:15

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

Сообщение mazurik » 15.11.2013 14:37

Друзья, я так и не понял, какой метод пользовать? Тот что в шапке, или то что в последнем посте???

Аватара пользователя
Пчелкин
phpBB 3.1.9
Сообщения: 10077
Зарегистрирован: 15.01.2010 13:57
Откуда: От Москвы 9 часов на Боинге
Благодарил (а): 1328 раз
Поблагодарили: 1294 раза
Контактная информация:

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

Сообщение Пчелкин » 16.11.2013 3:50

Верхняя правка хороша была до 3.0.7...значит нижняя...

Закрыто

Вернуться в «FAQ (phpBB 3.0.x)»