一淘模板56admin.com发明越来越多的网站以及App最先为用户搭建签到系统,以此来吸收以及留住用户。签到系统是一种轻量、互动性强的营销形式,通过用户签到获取收费权利,疏导用户形整天天、每一周等的习惯性操纵,从而到达品牌推广的目标。而PHP作为泛滥语言中的一种,自然能够实现这种签到性能。本文就来介绍怎样应用PHP实现每一周签到性能。
在实现每一周签到以前,咱们首先需要对于需要停止细致的剖析。
用户能够注册账号,并登录系统;
用户能够在签到页面停止签到操纵;
用户在一周内只能签到一次;
用户签到胜利后,能够获取响应的积分处分;
签到页面能够显示用户已经签到的天数以及以后能够获取的积分。
依据上述需要,咱们能够分成下列多少个步调停止实现。
数据库设想
建立一个表,用于存储用户的签到状况,其中囊括用户ID、中断签到天数、上次签到时日等字段。细致建表语句下列:
CREATE TABLE `user_sign` (`id` int(11) NOT NULL AUTO_INCREMENT,`user_id` int(11) NOT NULL COMMENT '用户ID',`con_day` int(11) NOT NULL DEFAULT '0' COMMENT '中断签到天数',`last_time` date NOT NULL DEFAULT '0000-00-00' COMMENT '上次签到时日',PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户签到信息表';
注册与登录
用户能够通过注书页面停止账号注册,而后登录系统。为了不便起见,咱们能够应用Session来实现用户的登录状态治理。在登录时将用户的ID存入Session中,以后的签到操纵中将通过Session获取用户ID。
签到与处分
在签到页面上,用户通过点击签到按钮,将会停止签到操纵。而签到时需要首先坚定用户上次签到时日是否在一周内,如果是,则签到失利;如果否,则盘算用户的中断签到天数,并停止积分处分。细致实现代码下列:
// 获取以后用户ID$user_id = $_SESSION['user_id'];// 盘问用户签到信息$sql = "SELECT con_day,last_time FROM user_sign WHERE user_id='$user_id'";$res = mysqli_query($link, $sql);$info = mysqli_fetch_assoc($res);$last_time = $info['last_time'];$con_day = $info['con_day'];// 坚定用户上次签到时日是否在一周内,如果则签到失利if ((time()-strtotime($last_time))
签到天数与积分显示
在每一次签到胜利后,需要盘问用户的中断签到天数以及能够获取的积分数。该性能代码下列:
// 获取以后用户ID$user_id = $_SESSION['user_id'];// 盘问用户签到信息$sql = "SELECT con_day,last_time FROM user_sign WHERE user_id='$user_id'";$res = mysqli_query($link, $sql);$info = mysqli_fetch_assoc($res);$last_time = $info['last_time'];$con_day = $info['con_day'];// 盘算应患上积分$reward = 5 + $con_day*2;// 输入签到天数以及处分积分echo "你已经签到".$con_day."天,可获取".$reward."积分!";
PHP实现每一周签到性能不难,主要的难点在于理清签到流程以及坚定用户签到时日。而通过建设适宜的数据构造,以及编写清晰的营业逻辑,能够实用地解决这些问题。希望本文对于有需要的读者们有所帮助。
本文链接:https://addon.ciliseo.com/jian-dan-shi-yong-php-shi-xian-mei-zhou-qian-dao-gong-neng.html
网友评论