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

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

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

实际的思路是:首先,检查当前时间是否与之前的登录日期相同。如果有,不加分。如果之前的登陆日期与当前的登陆日期不同,则增加积分。如果你实际完成了以下,有必要的朋友可以参考一下。

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

实际改动:
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/773416.html

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

发表评论

登录后才能评论

评论列表(0条)

保存