phpcms如何设置登录有效期限

重点

主要的控制这个时间的是这个函数

phpcms\libs\functions\global.func.php

sys_auth()函数

/**
* 字符串加密、解密函数
*
*
* @param	string	$txt		字符串
* @param	string	$operation	ENCODE为加密,DECODE为解密,可选参数,默认为ENCODE,
* @param	string	$key		密钥:数字、字母、下划线
* @param	string	$expiry		过期时间
* @return	string
*/
function sys_auth($string, $operation = 'ENCODE', $key = '', $expiry = 0) {}

1、如果要给他一个有效期限的话

每次登录的时候加入时间

$cookietime = SYS_TIME + 7200;	//系统时间+两个小时
$phpcms_auth = sys_auth($memberinfo['userid']."\t".$memberinfo['password'], 'ENCODE', get_auth_key('login'),7200);
param::set_cookie('auth', $phpcms_auth, $cookietime);
param::set_cookie('_userid', $memberinfo['userid'], $cookietime);
param::set_cookie('_username', $memberinfo['username'], $cookietime);
param::set_cookie('_nickname', $memberinfo['nickname'], $cookietime);
param::set_cookie('_groupid', $memberinfo['groupid'], $cookietime);
param::set_cookie('cookietime', $_cookietime, $cookietime);

1

2、如果需要一直登录的话

修改次文件夹的文件
phpcms\modules\member\classes\foreground.class.php

31list($userid, $password) = explode("\t", sys_auth($phpcms_auth, 'DECODE', $auth_key));		//最重要的一句话
//++可替换成
$_userid = param::get_cookie('_userid');

$userid = intval($_userid);
//验证用户,获取用户信息
$this->memberinfo = $this->db->get_one(array('userid'=>$userid));

//++可替换成
$password = $this->memberinfo['password'];

11

12

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值