【发布时间】:2020-06-01 02:10:35
【问题描述】:
我正在尝试将用户数据发布到数据库中,但密码部分出现错误,请帮助
Call to undefined method App\Controllers\Register::encrypt()
模型
public function register()
{
$model = new RegisterModel();
if (!$this->validate([
'username' => 'required|min_length[3]|max_length[25]',
'password' => 'required',
'user_phone' => 'required|min_length[11]|max_length[11]'
])) {
echo view('templates/header', ['page_title' => 'Register']);
echo view('dashboard/register');
echo view('templates/footer');
} else {
$model->save([
'username' => $this->request->getVar('username'),
'password' => $this->encryption->encrypt($this->input->post('password')),
'user_phone' => $this->request->getVar('user_phone'),
]);
echo view('news/success');
}
}
如果用户已经存在,则不会报告任何内容
<?= \Config\Services::validation()->listErrors(); ?>
【问题讨论】:
-
加密库加载了吗?
-
不...怎么做
-
和 CodeIgniter 中的所有服务一样,它可以通过 Config\Services 加载,$encrypter = \Config\Services::encrypter();正如文档所说。
-
完成但收到此错误
Encrypter needs a starter key. -
设置密钥和驱动程序对您的加密服务至关重要。
标签: php authentication post encryption codeigniter-4