php基于登陆时间判断实现一天多次登录只积分一次功能示例
发布:smiling 来源: PHP粉丝网 添加日期:2018-11-02 20:25:00 浏览: 评论:0
本文实例讲述了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);
这样就实现了这个功能.
Tags: php登陆时间 php登录积分
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)