用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