Answers:
您可以通过在用户表中添加一行来创建新用户。密码字段必须包含MD5哈希密码。您可以使用在线MD5生成器,或者,如果您使用的是PHPMyAdmin,请在输入纯密码的文本框旁边选择MD5功能。记下您新创建的用户的用户ID(uid)。之后,您需要在角色表中找到一个具有足够权限的角色。找到角色ID(rid),然后在users_roles表的新行中输入uid和rid。
如果没有授予管理员访问权限的角色,则由于客户端与用户1进行了所有操作,因此您需要执行一些较脏的技巧。将用户1的密码哈希保存在某处,并临时为用户1添加新密码。然后以用户1登录,为您自己创建一个新帐户,一个具有足够权限的新角色,并将您自己添加到该角色中。之后,在数据库中编辑用户1并恢复密码。我可以建议管理员角色来强制角色始终具有所有权限。
您还可以使用Drush创建用户并分配角色,以及更改现有用户的密码。
Drush是Drupal的命令行外壳和脚本编写界面,Drupal是名副其实的瑞士军刀,旨在使我们其中一些工作时间都花在命令提示符上的人变得更轻松。
drush help uli
如果您有权访问数据库,请运行以下查询
UPDATE users
SET name='admin',
pass='$S$Drl0vgZ9yuU9uc4JyaTMHxMPriC7q/PsOUOx52fCrVQSTpI/Tu4x',
status=1
WHERE uid = 1;
登录详细信息将是:
用户名= 管理员
密码= drupal
在此引用:
https://knackforge.com/blog/sivaji/different-ways-reset-drupal-admin-password
$user = array();
$user['status'] = 1; //for active user
$user['mail'] = 'test@test.com';
//profile field $user['profile_field_fname'] = 'Vikrant';
$user_account = array();
if($user_uid = module_name_get_uid_by_email($user['mail'])) { //It will use for update.
$user_account = user_load(array(uid => $user_uid));
}
//save or update user information.
user_save($user_account, $user);
//Check existing record by email.
function module_name_get_uid_by_email($email){
$query = db_query("SELECT uid FROM {users} WHERE mail = '%s'",$email);
$result = db_fetch_object($query);
return $result->uid;
}
试试上面的代码。