我想从另一个脚本添加新用户,我需要为Drupal7用户创建密码,我在Drupal上找不到确切的函数,那是什么函数?
使用drupal 7,密码不再通过md5加密。
有几种方法可以在drupal7中获取/设置密码。
使用drush(仅供参考,不用于您的情况):
drush upwd admin --password="newpassword"
如果没有drush,如果您有对服务器的cli访问权限:(仅供参考,在您的情况下不使用)
cd <drupal root directory>
php scripts/password-hash.sh 'myPassword'
现在复制生成的哈希并将其粘贴到查询中:
update users set name='admin', pass='pasted_big_hash_from_above' where uid=1;
如果您在无法连接的远程环境中工作,您可以将指定的代码放在password.php等文件中,例如:
<?php
if (isset($_GET['p'])) {
require_once dirname(__FILE__) . '/includes/bootstrap.inc';
require_once dirname(__FILE__) . '/includes/password.inc';
print _password_crypt('sha512', $_GET['p'], _password_generate_salt(DRUPAL_HASH_COUNT));
exit();
}
print "No password to hash.";
然后使用以下方法访问您的网站:http://domain.tld/password.php?p="我的密码"。哈希将显示在浏览器的选项卡上。
完成后不要忘记将其移除。
因此,如果您想使用一些密码函数生成,请查看_password_crypt()和-password_generate_salt()TR