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 相关文章推荐
Mysql的GROUP_CONCAT()函数使用方法
Mar 28 PHP
php将时间差转换为字符串提示
Sep 07 PHP
PHP中3种生成XML文件方法的速度效率比较
Oct 06 PHP
对PHP新手的一些建议(PHP学习经验总结)
Aug 20 PHP
php实现的微信红包算法分析(非官方)
Sep 25 PHP
PHP简单获取及判断提交来源的方法
Apr 22 PHP
PHP简单预防sql注入的方法
Sep 27 PHP
浅谈PHP的$_SERVER[SERVER_NAME]
Feb 04 PHP
php PDO实现的事务回滚示例
Mar 23 PHP
PHP实现简易计算器功能
Aug 28 PHP
解决php扩展安装不生效问题
Oct 25 PHP
PHP扩展安装方法步骤解析
Nov 24 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
php中常用编辑器推荐
2007/01/02 PHP
为IP查询添加GOOGLE地图功能的代码
2010/08/08 PHP
PHP include_path设置技巧分享
2011/07/03 PHP
记录PHP错误日志 display_errors与log_errors的区别
2012/10/09 PHP
PHP基于curl模拟post提交json数据示例
2018/06/22 PHP
jQuery判断checkbox是否选中的小例子
2013/12/02 Javascript
jquery对元素拖动排序示例
2014/01/16 Javascript
js调用iframe实现打印页面内容的方法
2014/03/04 Javascript
jquery阻止后续事件只执行第一个事件
2014/07/24 Javascript
jQuery过滤HTML标签并高亮显示关键字的方法
2015/08/07 Javascript
微信小程序 免费SSL证书https、TLS版本问题的解决办法
2016/12/14 Javascript
JavaScript自定义分页样式
2017/01/17 Javascript
浅谈在Vue-cli里基于axios封装复用请求
2017/11/06 Javascript
vue组件生命周期详解
2017/11/07 Javascript
webpack分离css单独打包的方法
2018/06/12 Javascript
vue通过cookie获取用户登录信息的思路详解
2018/10/30 Javascript
VUE+Element UI实现简单的表格行内编辑效果的示例的代码
2018/10/31 Javascript
Vue2.0 实现页面缓存和不缓存的方式
2019/11/12 Javascript
React中获取数据的3种方法及优缺点
2020/02/18 Javascript
Python运行的17个时新手常见错误小结
2012/08/07 Python
Python中的默认参数详解
2015/06/24 Python
Python使用defaultdict读取文件各列的方法
2017/05/11 Python
Python reduce()函数的用法小结
2017/11/15 Python
Flask框架实现给视图函数增加装饰器操作示例
2018/07/16 Python
Python计算库numpy进行方差/标准方差/样本标准方差/协方差的计算
2018/12/28 Python
ZABBIX3.2使用python脚本实现监控报表的方法
2019/07/02 Python
python操作微信自动发消息的实现(微信聊天机器人)
2020/07/14 Python
俄罗斯的精英皮具:Wittchen
2018/01/29 全球购物
Viking Direct荷兰:购买办公用品
2019/06/20 全球购物
茶叶生产计划书
2014/01/10 职场文书
诚信考试倡议书
2014/04/15 职场文书
说明书怎么写
2014/05/06 职场文书
售后服务承诺书怎么写
2014/05/21 职场文书
国庆节演讲稿
2014/05/27 职场文书
庆祝教师节主持词
2015/07/06 职场文书