-1
由于一些奇怪的原因,我发现很难用yii-> $ app-> generatePasswordhash($ password。)登录。我有一个注册用户并更改密码的备份。用户可以在我创建它们时成功登录,但是当我编辑用户密码时,系统会一直告诉我无效的用户名或密码。以下是我的代码。yii generatepasswordhash不工作
//Model
Class Adminuser extends ActiveRecord
{
public $resetpassword
public function activateuser($id,$newpassword)
{
//echo Yii::$app->security->generatePasswordHash($newpassword); exit;
$user = Adminuser::find()->where(['id' =>$id])->one();
$user->status = self::SET_STATUS;
$user->password_reset_token = null;
$user->password = Admin::genPassword($this->resetpassword); // this returns yii::$app->security->generatePasswordHash($password)
return $user->save();
}
}
//控制器动作
public function actionActivate($id)
{
$model = new Adminuser();
$model->scenario = 'adminactivate';
if ($model->load(Yii::$app->request->post()) && $model->validate()) {
if($model->activateuser($id,$model->password))
{
//send a mail
Yii::$app->session->setFlash('success', 'New user has been activated.');
return $this->redirect(['index']);
}
else
$errors = $model->errors;
}
return $this->render('activate', [
'model' => $model,
]);
}
请我需要帮助
谢谢。现在尝试它并恢复 – codeDev