我在我的网站上使用Tank Auth库,它从前端工作得很好。
但是,我希望能够从我的网站管理员端管理用户,因此我需要能够通过管理员创建新用户。
我想使用Tank auth的功能来创建密码,其格式与tank auth正在使用的phpass格式相同。
因此,在成功验证后,我需要使用Tank Auth函数PasswordHash哈希$ _POST ['password']。
所以,现在我的控制器中有这个代码:
$this->load->helper(array('form', 'url'));
$this->load->library('form_validation');
$this->load->library('security');
$this->load->library('tank_auth');
$this->lang->load('tank_auth');
$password_original = $_POST['password'];
$hasher = new PasswordHash(
$this->ci->config->item('phpass_hash_strength', 'tank_auth'),
$this->ci->config->item('phpass_hash_portable', 'tank_auth')
);
$hashed_password = $hasher->HashPassword($password);
但是我收到此错误消息: 消息:未定义属性:Admin :: $ ci
我想我必须使用& ci初始化新实例,但我不知道如何。
提前感谢您提供有关如何以不同方式进行操作的任何帮助或建议。
答案 0 :(得分:4)
尝试删除->ci
$password_original = $_POST['password'];
$hasher = new PasswordHash(
$this->config->item('phpass_hash_strength', 'tank_auth'),
$this->config->item('phpass_hash_portable', 'tank_auth')
);
$hashed_password = $hasher->HashPassword($password);