dedecms会员登录积分每天只限增加一次的实现思路

dedecms会员登录积分每天只限增加一次的实现思路,第1张

dedecms会员登录积分每天只限增加一次的实现思路

这个想法是检查当前时间是否与之前的登陆日期相同。如果是,在不添加点的情况下,您必须更改包含文件夹名称下的memberlogin.class.php文件,如下所述。

最先把思路说一下:先先检验当前时间与之前登陆日期是不是为同一天?如果是也不加積分。
假如之前登陆日期与当今登陆日期不相同就加積分。

实际改动:

include文件夹名称下memberlogin.class.php文件

实际代码大约在370行

原来代码

拷贝代码代码以下:
//登陆提升積分(上一次登陆時间务必超过两小时)
if(time()-$logintime>7200&&$cfg_login_adds>0)
{
$dsql->ExecuteNoneQuery("Update`dede_member`set`scores`=`scores`{$cfg_login_adds}wheremid='$uid'");
}
$this->M_ID=$uid;
$this->M_LoginTime=time();

改动为:

拷贝代码代码以下:
//登陆提升積分(每日登陆加一次積分)
$row=$dsql->GetOne("SELECTlogintimeFROMdede_memberWHEREmid='$uid'");
$logintime=$row['logintime'];
$timel=GetDateMk($logintime);
$now=GetDateMk(time());
if($timel!=$now)
{
$dsql->ExecuteNoneQuery("Update`dede_member`set`scores`=`scores`{$cfg_login_adds}wheremid='$uid'");
}
$nowtime=GetDateTimeMk(time());
$logint=GetMkTime($nowtime);
$dsql->ExecuteNoneQuery("Updatedede_membersetlogintime='$logint'wheremid='$uid'");
$this->M_ID=$uid;
$this->M_LoginTime=time();

由于发觉dedecms自身纪录登陆時间禁止就加了个改动登陆時间的句子,用这类笨方式完成了。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/773284.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-03
下一篇 2022-05-03

发表评论

登录后才能评论

评论列表(0条)

保存