php登陆页的密码处理方式分享
php登陆页的密码处理方式分享
发布时间:2016-12-29 来源:查字典编辑
摘要:控制器里面:elseif(!$model->validatePassword($data->password))复制代码代码如下:

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

复制代码 代码如下:

<?php

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 < 6; $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。。

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新php教程学习
热门php教程学习
编程开发子分类