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


Posted in PHP onOctober 14, 2013

控制器里面: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 新手入门教程
Aug 03 PHP
PHP 判断变量类型实现代码
Oct 23 PHP
PHP统计目录下的文件总数及代码行数(去除注释及空行)
Jan 17 PHP
php 数组的一个悲剧?
May 11 PHP
采用PHP函数memory_get_usage获取PHP内存清耗量的方法
Dec 06 PHP
Yii PHP Framework实用入门教程(详细介绍)
Jun 18 PHP
php解压文件代码实现php在线解压
Feb 13 PHP
php根据某字段对多维数组进行排序的方法
Mar 07 PHP
详解PHP中的Traits
Jul 29 PHP
全面了解PHP中的全局变量
Jun 17 PHP
PHP常用算法和数据结构示例(必看篇)
Mar 15 PHP
ThinkPHP5与单元测试PHPUnit使用详解
Feb 23 PHP
PHP设置图片文件上传大小的具体实现方法
Oct 11 #PHP
PHP关于IE下的iframe跨域导致session丢失问题解决方法
Oct 10 #PHP
php检测网页是否被百度收录的函数代码
Oct 09 #PHP
php MessagePack介绍
Oct 06 #PHP
php 批量替换程序的具体实现代码
Oct 04 #PHP
php5.5中类级别的常量使用介绍
Oct 02 #PHP
php mysql_real_escape_string函数用法与实例教程
Sep 30 #PHP
You might like
PHPlet在Windows下的安装
2006/10/09 PHP
ADODB的数据库封包程序库
2006/12/31 PHP
php之对抗Web扫描器的脚本技巧
2008/10/01 PHP
PHP中include与require使用方法区别详解
2013/10/19 PHP
PHP魔术方法__GET、__SET使用实例
2014/11/25 PHP
Symfony2安装第三方Bundles实例详解
2016/02/04 PHP
Yii输入正确验证码却验证失败的解决方法
2017/06/06 PHP
Yii Framework框架使用PHPExcel组件的方法示例
2019/07/24 PHP
PHP数组Key强制类型转换实现原理解析
2020/09/01 PHP
Jquery获取复选框被选中值的简单方法
2013/07/04 Javascript
两个数组去重的JS代码
2013/12/04 Javascript
整理AngularJS中的一些常用指令
2015/06/16 Javascript
JS中利用FileReader实现上传图片前本地预览功能
2018/03/02 Javascript
vue项目中使用百度地图的方法
2018/06/08 Javascript
详解vue-cli 3.0 build包太大导致首屏过长的解决方案
2018/11/10 Javascript
vue自定义键盘信息、监听数据变化的方法示例【基于vm.$watch】
2019/03/16 Javascript
一文快速详解前端框架 Vue 最强大的功能
2019/05/21 Javascript
快速解决layui弹窗按enter键不停弹窗的问题
2019/09/18 Javascript
Vue3.0数据响应式原理详解
2019/10/09 Javascript
vue实现简单学生信息管理
2020/05/30 Javascript
python设计模式大全
2016/06/27 Python
django上传图片并生成缩略图方法示例
2017/12/11 Python
python实现两个文件合并功能
2018/04/01 Python
Python List cmp()知识点总结
2019/02/18 Python
Python 实现数据结构中的的栈队列
2019/05/16 Python
对django layer弹窗组件的使用详解
2019/08/31 Python
浅析python中while循环和for循环
2019/11/19 Python
pytorch 实现模型不同层设置不同的学习率方式
2020/01/06 Python
Mamas & Papas沙特阿拉伯:英国最受欢迎的婴儿品牌
2017/11/20 全球购物
jurlique茱莉蔻英国官网:澳洲天然护肤品
2018/08/03 全球购物
北美Newegg打造的全球尖货海购平台:tt海购
2018/09/28 全球购物
二年级学生评语大全
2014/04/23 职场文书
2019求职信:应届生求职信范文
2019/04/24 职场文书
Python爬虫数据的分类及json数据使用小结
2021/03/29 Python
javascript的setTimeout()使用方法总结
2021/11/20 Javascript
tomcat的catalina.out日志按自定义时间格式进行分割的操作方法
2022/04/02 Servers