Стандартное восстановление пароля от административной панели Joomla
Пароль от административной панели Joomla можно восстановить стандартными средствами. Данный метод подойдет для тех, у кого на сайте разрешена авторизация, был указан реальный email для первого пользователя в группе “Super Users”, а так же настроена и работает функция отправки почты. Для этого в адресной строке браузера наберите – “http://домен/index.php?option=com_users&view=reset” и дальше действуйте согласно указаниям.
Восстановление пароля от административной панели Joomla с помощью скрипта
Если по какой-то причине не удалось восстановить пароль администратора стандартными средствами, можно воспользоваться скриптом восстановления пароля. Этот скрипт поможет изменить пароль для пользователя, который создается при установке Joomla. Cкрипт можно загрузить по ссылке – http://j-wiki.ru/images/b/bd/Password.zip (листинг файла приведен ниже).
Запуск скрипта
- Распакуйте файл password.php в корневую директорию сайта.
- Наберите в адресной строке браузера “http://домен/password.php”. После этого должна появиться форма для ввода нового пароля.
- При замене используйте пароль состоящий из латинских букв и/или цифр. После восстановления его можно будет сменить в административной панели Joomla.
- Следуйте дальнейшим указаниям.
Листинг password.php
<?php header('Content-Type: text/html; charset=utf-8'); if (!isset($_GET['password'])) { $body = form(); Temlplate($body); } else { $body = change(); Temlplate($body); } function Temlplate($body) { $html = ' <!DOCTYPE html> <html> <head> <title>Замена пароля в Joomla</title> </head> <body>' .$body. '</body> </html>'; die($html); } function form() { $html = '<form action="'.basename(__FILE__).'" method="GET"> <label for="password">Введите значение нового пароля</label> <input id="password" type="text" name="password" /> <button>Сменить</button> </form>'; return $html; } function change() { define('_JEXEC', 1); define('JPATH_BASE', dirname(__FILE__)); define('JPATH_SITE', dirname(__FILE__)); define('JPATH_PLATFORM', JPATH_BASE . '/libraries'); if (file_exists(JPATH_PLATFORM.DIRECTORY_SEPARATOR.'import.php')) { require_once JPATH_PLATFORM.DIRECTORY_SEPARATOR.'import.php'; jimport('joomla.user.helper'); } else { return 'Библиотека Joomla не найдена!'; } if (file_exists('configuration.php')) { $app = JFactory::getConfig('configuration.php'); } else { return 'Файл конфигурации не найден!'; } $db = JFactory::getDbo(); $db->setQuery('SELECT id, username from #__users order by id LIMIT 1'); if (!$user = $db->loadObject()) { return $db->getErrorMsg(); } $password = $_GET['password']; $salt = JUserHelper::genRandomPassword(32); $crypt = JUserHelper::getCryptedPassword($password, $salt); $db->setQuery('UPDATE #__users set password = "'. $crypt.':'.$salt.'" WHERE id = '. (int) $user->id); if (!$db->query()) { return $db->getErrorMsg(); } $html = '<p>Пароль усспешно обновлен! Детали учетной записи:</p><ul><li>Логин: '.$user->username.'</li><li>Пароль: '.$password.'</li></ul>'; if (!unlink(__FILE__)) { $html .= '<p><strong>Внимание! Для безопасности файл - '.__FILE__.' должен быть удален с сервера!</strong></p>'; } else { $html .= '<p>Файл '.__FILE__.' успешно удален</p>'; } $html .= '<p><a href="administrator/index.php">Войти в панель управления Joomla</a></p>'; return $html; } ?>
http://j-wiki.ru
If you found an error, highlight it and press Shift + Enter or click here to inform us.