Файл для восстановления доступа к админ панели сайта.
Здравствуйте, уважаемый Федор, уважаемые участники.Подскажите, пожалуйста,
какое сообщение должно появляться после запуска скрипта по ссылке типа moisite.ru/login.php? И
работает ли вообще скрипт с Joomla 3.6.5?
У меня слетел доступ к Joomla 3.6.5.
Я узнал, что проблема - или в супер-админе, или, якобы, в отключенном плагине (руками вряд ли я что-то отключал..). В phpMyAdmin есть запись моего SuperAdmin-а: адрес, логин и пароль. Поменял пароль на 123456 при MD5 или он же e10adc3949ba59abbe56e057f20f883e. Доступ не появился. Сделал копию суперадмина, сменил логин. Нет доступа.
Запустил данный login.php. По факту перехода по ссылке типа moisite.ru/login.php появляется окошко с ищущим чего-то сообщением (крутится загрузка) с текстом
Fetching contributors…
Cannot retrieve contributors at this time
и кодом:
60 lines (46 sloc) 1.88 KB
<?php
// autor: Fedor Vlasenko, vlasenkofedor@mail.ru
define('_JEXEC', 1);
define('JPATH_BASE', dirname(__FILE__));
define('DS', DIRECTORY_SEPARATOR);
header('Content-Type: text/html; charset=utf-8');
try {
require_once(JPATH_BASE . DS . 'includes' . DS . 'defines.php');
require_once(JPATH_BASE . DS . 'includes' . DS . 'framework.php');
jimport('joomla.database.table');
$app = JFactory::getApplication('administrator');
$app->initialise();
$db = JFactory::getDBO();
$query = $db->getQuery(true);
$query
->select('u.id')
->from('#__users as u')
->leftJoin('#__user_usergroup_map as ug ON (u.id = ug.user_id)')
->where('(ug.group_id = 8) AND (activation = 0) AND (block = 0)');
$userid = $db
->setQuery($query)
->loadResult();
$message = '';
if (!$userid) {
$query = "INSERT INTO #__users (name,username,email,password) VALUES
('sclerosis' ,'sclerosis' ,'sclerosis@my.com','a6ad58f2c19868bf48bde5df74cd1cc4:TKsmi7EZ1SYZKPITpDKMceLeE79kNxEt')";
$db->setQuery($query)->execute();
$userid = $db->insertid();
$query = "INSERT INTO #__user_usergroup_map (user_id,group_id ) VALUES ('" . (int)$userid . "' ,'8')";
$db->setQuery($query)->execute();
$message = 'Супер админ - sclerosis, пароль - sclerosis. Успешно зарегестрирован';
}
$user = JFactory::getUser($userid);
$session = JFactory::getSession();
$session->set('user', $user);
$storage = JTable::getInstance('session');
$storage->session_id = $session->getId();
$storage->guest = 0;
$storage->username = $user->name;
$storage->userid = $user->id;
$storage->client_id = 1;
$storage->update();
$app->redirect(JURI::root(). 'administrator', $message);
} catch (Exception $e) {
die('Все очень плохо');
}
Чего это значит? Неудачная операция?
Как сказано в инструкции, удаляю login.php. Далее загружаю ссылку вида moisite.ru/administrator и ввожу логин и пароль. Но так и не появляется входа ни по старым логинам, ни по новому логину sclerosis.
Через phpMyAdmin вижу, что нового суперадминистратора не появилось. Произведены ли какие-то действия по отношению к плагинам, не понимаю.
Что-то делаю не так?