Мне нужно на внешнем файле php просто вводя id в переменную — пользователя его авторизовать в CMS.
Тоесть зайти на этот скрипт-авторизации по адресу а потом на основной сайт и чтобы этот юзер был авторизован уже.
cmsEventsManager::hook('auth_login', $logged_id);
Нашел такую команду но не работает.
Шапка с в хедер встроена все ок
Где в этот хук используете? В своем скрипте? Движок запустили в своем скрипте?
да
Шапка php файла состоит из
<?php // Определяем корень // оставлено для совместимости, если кто-то использовал эту константу // в CMS не используется нигде // Устанавливаем кодировку // Подключаем автозагрузчик классов require_once PATH . '/system/config/autoload.php'; // Устанавливаем обработчик автозагрузки классов // Инициализируем конфиг $config = cmsConfig::getInstance(); // дебаг отключен - скрываем все сообщения об ошибках if(!$config->debug){ } else { // включаем отладку cmsDebugging::enable(); } // Проверяем, что система установлена if (!$config->isReady()){ $root = str_replace(str_replace(DIRECTORY_SEPARATOR, '/', realpath($_SERVER['DOCUMENT_ROOT'])), '', str_replace(DIRECTORY_SEPARATOR, '/', PATH)); } // Устанавливаем часовую зону // Подключаем все необходимые классы и библиотеки cmsCore::loadLib('html.helper'); cmsCore::loadLib('strings.helper'); cmsCore::loadLib('files.helper'); cmsCore::loadLib('spyc.class'); // Инициализируем ядро $core = cmsCore::getInstance(); // Подключаем базу $core->connectDB(); if(!$core->db->ready()){ cmsCore::error($core->db->connectError()); } /////////// Запускаем кеш // cmsCache::getInstance()->start(); cmsEventsManager::hook('core_start'); // /////////// Загружаем локализацию cmsCore::loadLanguage(); // // устанавливаем локаль языка { lang_setlocale(); } // устанавливаем локаль MySQL $core->db->setLcMessages(); //require_once PATH . '/system/core/user.php'; $inUser = cmsUser::getInstance(); ?> <? $logged_id=1; cmsEventsManager::hook('auth_login', $logged_id); ?>
АВТОРИЗОВАТЬ ПОЛЬЗОВАТЕЛЯ с ID 1 которые есть в базе или 2 или 3 и тд.
или по названию логина — не важно.
Чтобы после захода на этот файл пользователь уже был авторизован на сайте.
Хук я взял из других файлов движка но не пашет…
<?php require_once 'bootstrap.php'; $logged_id=1; $model = cmsCore::getModel('users'); $user = $model->getUser($logged_id); cmsEventsManager::hook('user_login', $user); cmsUser::setUserSession($user); $auth_token = string_random(32, $user['email']); $model->setAuthToken($user['id'], $auth_token); $model->deleteExpiredToken($user['id'], 8640000);
если не решил проблему велкам лс, помогу)Здравствуйте! Все перепробывал не получается.
Мне нужно на внешнем файле php просто вводя id в переменную — пользователя его авторизовать в CMS.
Тоесть зайти на этот скрипт-авторизации по адресу а потом на основной сайт и чтобы этот юзер был авторизован уже.