Добавление пользователя в Joomla 1.5.9 через базу данных
1. Таблица jos_users (перфикс может быть другой).
Тут все ясно, основная сложность - это хеш пароля. Он уже не md5, как было раньше, теперь он какой-то длинный и страшный. Сложнее всего найти, как этот пароль генерируется. Класс, который поможет нам в этом лежит тут: /libraries/joomla/user/helper.php.
Вытаскиваем этот класс целиком и завываем в какой-нибудь файл, который сгенерирует нам пароль. Тут класс я приводить не буду, т.к. он огромный.
А вот как с его помощью сгенерировать новый пароль:
$salt = JUserHelper::genRandomPassword(32);
$crypt = JUserHelper::getCryptedPassword($pass, $salt);
echo $crypt.’:’.$salt;
Такая конструкция выведет нам пароль $pass (он задается Вами).
2. А вот теперь самое интересное. На первом этапе мы сделали пользователя. Но если не проделать 2 и 3ий этап, то пользователь не будет виден джумле (тут я тоже долго ловил тупняка).
Лезем в таблицу jos_core_acl_aro и добавляем новое значение так, чтобы в поле value вышло id нашего нового пользователя.
3. Лезем в таблицу jos_core_acl_groups_aro_map и добавляем значение так, чтобы в group_id вышло 18, а в aro_id значение id из таблицы jos_core_acl_aro (нашей последней записи).
(c)dimoning.ru