用PHP怎样实现每天登陆加积分的功能?
导读:用PHP怎样实现每天登陆加积分的功能?对于登录加积分的功能是很多网站或软件常用的营销手段,那么这样的功能用代码是怎样实现的呢?下文给大家分享一个简单的实现示例,感兴趣的朋友可以参考。 本文操作环境:Windows7系统,PHP7.4版,D...
用PHP怎样实现每天登陆加积分的功能?对于登录加积分的功能是很多网站或软件常用的营销手段,那么这样的功能用代码是怎样实现的呢?下文给大家分享一个简单的实现示例,感兴趣的朋友可以参考。
本文操作环境:Windows7系统,PHP7.4版,Dell G3电脑。
php怎么实现每天积分加一?
php实现一天多次登录,只积分一次功能:
在网上找了很多的案例,感觉都差不多,有的还比较的繁琐,就自己尝试了一下,如何实现这个功能
实现这个功能我在数据表里面增加了一个字段logintime,表示最后一次的登录时间,然后使用一天中的零时零分零秒和上一次的登录时间进行比较,如果上一次的登录时间大于了这个时间点表示已经登陆过,如果上一次的登录时间小于了这个时间点,则表示第一次登录,增加积分
上代码:
// 判断是否是一天中第一次登录
// 上一次登陆的时间
$lastLogintime = $userinfo['logintime'];
// 一天中的零时零分零秒
$today = strtotime(date('Y-m-d'));
if($lastLogintime $today) {
// 一天中第一次登录增加积分(关联更新)
// 注意:使用关联更新数据的时候需要传递两次id
$data['id'] = $userinfo['id'];
$data['userinfo'] = array(
'points' =>
$userinfo['points'] + C('LOGIN'),
);
$user->
relation(true)->
where(array('id'=>
$userinfo['id']))->
save($data);
}
需要注意的是还要修改登录时间:
// 更新登录时间和登录ip
$updateData = array(
'id' =>
$userinfo['id'],
'userinfo' =>
array(
'logintime' =>
time(),
'loginip' =>
getIP(),
),
);
$user->
relation(true)->
where(array('id'=>
$userinfo['id']))->
save($updateData);
以上就是PHP实现每天登陆加积分功能的方法,本文只是提供了一种实现思路,代码仅供参考,需要的朋友可以了解看看,希望对大家学习PHP有帮助,想要了解更多可以继续浏览网络其他相关的文章。
文本转载自PHP中文网
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 用PHP怎样实现每天登陆加积分的功能?
本文地址: https://pptw.com/jishu/652851.html
