Генерация средствами php нового пароля в Joomla 2.5

Когда пишешь собственные плагины для Joomla может возникнуть множество вопросов, касаемо ее внутренностей. Сама по себе данная CMS крайне проста. Периодически буду выкладывать некоторые скрипты, которые могут пригодится для написания расширений к ней. В этой записи я отражу вопрос генерации нового пароля пользователя системы Joomla 2.5. Для начала в php файл нужно подключить необходимые классы, которые содержат в себе методы для генерации паролей в CMS. Хэш пароля в Joomla состоит из 2 частей, вторая из которых соль, которая генерируется системой случайным образом, потом она хэширует сам пароль. В базу же записывается пара хэш:соль. Для генерации нового пароля пользователя был использован следующий скрипт:


<?php

header('Content-Type: text/html; charset=utf-8', true);
define( "_JEXEC", 1 );
define( "JPATH_BASE", realpath(dirname(__FILE__).'/../' ) ); //Так как модуль у меня лежал не в
define( "DS", DIRECTORY_SEPARATOR );// корне, я указал путь до корневой директории

require_once JPATH_BASE.DS."includes".DS."defines.php";
require_once JPATH_BASE.DS."includes".DS."framework.php";
require_once JPATH_BASE.DS."libraries".DS."joomla".DS."user".DS."helper.php";

$test='mypw1';//в переменную $test записываем пароль
$salt = JUserHelper::genRandomPassword(32);
$crypt = JUserHelper::getCryptedPassword($test, $salt);
$password = $crypt.':'.$salt;
echo $password;//выводим хэш, с которым в дальнейшем можно делать все что угодно

?>

Я не большой специалист в программировании, поэтому, если есть какие-либо замечаний-пишите в комментариях.

Понравилась статья? Поделиться с друзьями: