Heim >php教程 >php手册 >php登陆页的密码处理方式分享

php登陆页的密码处理方式分享

WBOY
WBOYOriginal
2016-06-06 20:27:221277Durchsuche

这篇文章介绍了php登陆页的密码处理方式,有需要的朋友可以参考一下

控制器里面:elseif(!$model->validatePassword($data->password))

复制代码 代码如下:



 

class XBaseModel extends CActiveRecord
{
    /**
     * 检测用户密码
     *
     * @return boolean
     */
    public function validatePassword ($password)
    {
        return $this->hashPassword($this->password) === $password;
    }

    /**
     * 密码进行加密
     * @return string password
     */
    public function hashPassword ($password)
    {
        return md5($password);
    }

}

或是:

if ($user && $user->password == $user->hashPassword($this->password, $user->salt)) {

复制代码 代码如下:


public function validatePassword($password) {
        return $this->hashPassword($password, $this->salt) === $this->password;
    }

 public function hashPassword($password, $salt) {
        return md5(md5($password) . $salt);
    }

public function generateSalt() {
$str = '1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
$len = strlen($str) - 1;
$string = '';
for ($i = 0; $i $string .= $str[mt_rand(0, $len)];
}
return $string;
}

或是:

复制代码 代码如下:


public function validatePassword($password) {

        return $this->hashPassword($password,$this->salt)===$this->password;
    }

 
    public function hashPassword($password,$salt)
    {
        return md5($salt.$password);
    }

 
    protected function generateSalt()
    {
        return uniqid('',true);
    }

注意:如果有salt,数据库里面字段要有salt。。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn