您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
这篇文章主要为大家展示了“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如何基于登陆时间判断实现一天多次登录只积分一次功能”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。