Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 用salt将密码存储为SHA512_Php_Yii_Yii2 - Fatal编程技术网

Php 用salt将密码存储为SHA512

Php 用salt将密码存储为SHA512,php,yii,yii2,Php,Yii,Yii2,我想使用SHA512(salted)存储我的密码。目前我将其存储为MD5。因此,我的登录功能不起作用 public function actionUserForm() { $model=new UserForm; $newUser = new UserForm; // if it is ajax validation request if(isset($_POST['ajax']) && $_POST['ajax'

我想使用SHA512(salted)存储我的密码。目前我将其存储为MD5。因此,我的登录功能不起作用

public function actionUserForm()
{
        $model=new UserForm;
        $newUser = new UserForm;

        // if it is ajax validation request
        if(isset($_POST['ajax']) && $_POST['ajax']==='userForm')
        {
                echo CActiveForm::validate($model);
                Yii::app()->end();
        }

        // collect user input data
        if(isset($_POST['UserForm']))
        {
                $model->attributes=$_POST['UserForm'];
                 $pass = md5($model->password);
                $newUser->password = $model->pass;
                $newUser->email = $model->email;
                // $newUser->joined = date('Y-m-d');

               if ($model->save())
        $this->redirect("login");   

        }
        // display the register form
        $this->render('userForm',array('model'=>$model));
}

将您的代码更改为。。。您的密码分配有错误

 $pass = md5($model->password); 
 $newUser->password = $pass;

密码不是用md5字符串分配的。

请确保您的登录表单模型也验证sha512密码的使用…@DoubleH:当前我的密码另存为字符串。。。所以我不能登录。。我只是试着像md5一样存钱,但还是不能。请告诉我你到底在干什么?阅读文档。Yii2内置了密码哈希。@Coz:我试过了。公共函数beforeSave(){if(parent::beforeSave()){$hash=Yii::$app->getSecurity()->generatePasswordHash($password);返回true;}否则返回false;}@Coz:我收到了这个错误。。致命错误:访问未声明的静态属性:Yii::$app,位于第71行的D:\xamp\htdocs\Final\Yii\demos\feedcloud\protected\models\StudentRegister.php中,请告知如何在登录表单模型设置属性后验证此密码。。将$loginmodel密码更改为md5,如上所述。。