Как обновить TorrentPier без переустановки и потери модификаций

Started by belomaxorka on 2023-06-24 05:57 — 22 replies, 4777 views

#11
admin/admin_ug_auth.php
строка 196
foreach ($forums['c'] as $c_id => $c_data) {
        $template->assign_block_vars('c', array(
            'CAT_ID' => $c_id,
            'CAT_TITLE' => $forums['cat_title_html'][$c_id],
            'CAT_HREF' => "$base_url&" . POST_CAT_URL . "=$c_id",
        ));

По ходу обновления вижу есть убирается array(, а есть остается так само последняя запятая иногда остается. Ошибка или так нужно?
Запятые и array() на [] можете не трогать. Это улучшение читаемости кода
#12
И ещё, учтите что в конце вам придется перейти на PHP 8.1. Ну и про папку vendor из последней версии не забудьте, её надо будет обязательно перенести (старую перед этим удалить)
#13

belomaxorka,​

а старые пароли пользователей (v2.3.0) не походят для входа? Вообще есть возможность модифицировать базу, чтобы она подошла на новую версию? Читая ветки по всем альфам, бетам и релизпакам, слаживается впечетление, что переезд впринципе невозможен. То есть если запускать сайт с нуля, то подойдет версия 2.4.3, миграция - смерть, миллион ошибок.
#14

belomaxorka,​

а старые пароли пользователей (v2.3.0) не походят для входа? Вообще есть возможность модифицировать базу, чтобы она подошла на новую версию? Читая ветки по всем альфам, бетам и релизпакам, слаживается впечетление, что переезд впринципе невозможен. То есть если запускать сайт с нуля, то подойдет версия 2.4.3, миграция - смерть, миллион ошибок.
Помню переезжал тоже. По факту делал так .
На компе локально openserver, ставил чистую версию движка, подключал старую базу, ошибки базы были в основном из за отсутствия модов, закидывал моды, муторно конечно .... но переехать можно
#15

belomaxorka,​

а старые пароли пользователей (v2.3.0) не походят для входа? Вообще есть возможность модифицировать базу, чтобы она подошла на новую версию? Читая ветки по всем альфам, бетам и релизпакам, слаживается впечетление, что переезд впринципе невозможен. То есть если запускать сайт с нуля, то подойдет версия 2.4.3, миграция - смерть, миллион ошибок.
ничего не надо модифицировать. я чуть попозже скину код который вставите в файл и всё будет работать как прежде
#16

belomaxorka,​

а старые пароли пользователей (v2.3.0) не походят для входа? Вообще есть возможность модифицировать базу, чтобы она подошла на новую версию? Читая ветки по всем альфам, бетам и релизпакам, слаживается впечетление, что переезд впринципе невозможен. То есть если запускать сайт с нуля, то подойдет версия 2.4.3, миграция - смерть, миллион ошибок.
src/Legacy/Common/User.php


public function checkPassword(string $enteredPassword, array $userdata): bool
    {
        global $bb_cfg;
        if (password_verify($enteredPassword, $userdata['user_password'])) {
            if (password_needs_rehash($userdata['user_password'], $bb_cfg['password_hash_options']['algo'], $bb_cfg['password_hash_options']['options'])) {
                // Update password_hash
                DB()->query("UPDATE " . BB_USERS . " SET user_password = '" . $this->password_hash($enteredPassword) . "' WHERE user_id = '" . $userdata['user_id'] . "' AND user_password = '" . $userdata['user_password'] . "' LIMIT 1");
            }

            return true;
        } else {
            if (md5(md5($enteredPassword)) === $userdata['user_password']) {
                // Update old md5 password
                DB()->query("UPDATE " . BB_USERS . " SET user_password = '" . $this->password_hash($enteredPassword) . "' WHERE user_id = '" . $userdata['user_id'] . "' AND user_password = '" . $userdata['user_password'] . "' LIMIT 1");

                return true;
            }
        }

        return false;
    }
Найдите public function checkPassword(string $enteredPassword, array $userdata): bool и замените на код выше
#17
Не выходит из профиля, помну что были подобные ошибки, но решение забыл.
#18
Не выходит из профиля, помну что были подобные ошибки, но решение забыл.
Удалите куки, удалите ключ авторизации через настройки профиля, сделайте ctrl + f5
#19
Может тогда из базы у всех удалить ключ авторизации?
#20
Может тогда из базы у всех удалить ключ авторизации?
Таблицу сессий почистить и обновить кэш