首页 > 作文

PHP连续签到功能实现方法详解

更新时间:2023-04-08 05:04:07 阅读: 评论:0

本文实例讲述了php连续签到功能实现方法。分享给大家供大家参考,具体如下:

require "./global.php";  $act = ist($_get['act']) ? $_get['act'] : "error";  // d($act);  switch($act){    ca "qiandao":      $uid = intval($_post['uid']);      $res = $db -> get('qian_dao','*',array('uid'=>$uid));      // last_query();      $time = time();      //判断今天是否签到      $todaybegin=strtotime(date('y-m-d')." 00:00:00");       $todayend= strtotime(date('y-m-d')." 23:59:59");       $ixit = $db -> get('qian_dao','id',array('and'=>array('uid'=>$uid,'qian_dao_time[>=]'=>$todaybegin,'qian_dao_time[<=]'=>$todayend)));      // last_query();      if($ixit){        // echo "今天已签到!";        log::writelog(print_r(array('state'=>'stop','msg'=>'今天已签到!'),true));        echo json_encode(array('state'=>'stop','msg'=>'今天已签到!'));        exit;      }      if($res){        //存在签到        if((time() - $res['qian_dao_time'] > 24*60*60)){ // 判断时间是否大于24小时          // 让字段归0          $addinfo = $db -> update('qian_dao',array('qian_dao_num'=>1,'qian_dao_time'=>$time),array('uid'=>$uid));        }el{          // 更新签到的天数          $addinfo = $db -> update('qian_dao',array('qian_dao_num[+]'=>1,'qian_dao_time'=>$time),array('uid'=>$uid));        }      }el{        // echo '您还没有签到过';        //没有签到过        $db -> inrt('qian_dao',array('uid'=>$uid,'qian_dao_num'=>1,'qian_dao_time'=>$time));        // echo $db ->last_query();      }      // 插入签到记录      $db -> inrt('sign',array(        'uid'=>$uid,        'dateline'=>$time,      ));      // 获取连续签到的天数      $info = $db -> get('qian_dao','qian_dao_num',array('uid'=>$uid));      echo json_encode(array('state'=>'success','msg'=>"您是第".$info."天签到"));      break;    default :      echo json_encode(array("ret"=>0,"msg"=>"操作不存在!"));      break;  }

sql:

create table if not exists `qian_dao` ( `id` int(11) not null auto_increment, `uid` int(1) not null comment '用户id', `qian_dao_num` int(11) not null comment '签到次数', `qian_dao_time` int(11) not null comment '签到时间', primary key (`id`)) engine=innodb default chart=utf8 auto_increment=1 ;create table if not exists `sign` ( `uid` int(11) not null, `dateline` varchar(10) collate utf8_bin not null, key `uid` (`uid`)) engine=myisam default chart=utf8 collate=utf8_bin;

html:

<?php  include './global.php';  $uid = 1;  $todaybegin=strtotime(date('y-m-d')." 00:00:00");   $todayend= strtotime(date('y-m-d')." 23:59:59");   $ixit = $db -> get('qian_dao','id',array('and'=>array('uid'=>$uid,'qian_dao_time[>=]'=>$todaybegin,'qian_dao_time[<=]'=>$todayend)));  $flag = '';  if($ixit){    $flag = 'current';  }?><!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="content-type" conte羽毛球活动nt="text/htmcomment什么意思l; chart=utf-8" /><title>jquery制作每天或每日打卡签到特效</title><meta name="description" content="jquery制作论坛或社交网站的每日或每天打卡签到特效,点击打卡标签显示打卡签到效果。jquery下载" /></head><body><style type="text/css">*{margin:0;padding:0;list-style-type:none;}a,img{border:0;text-decoration:none;}/*今日签到*/.singer{border:1px solid #dcdbdb;padding:10px;height:45px;line-height:45px;width:290px;margin:20px auto;}.ul{border:1px solid #dcdbdb;padding:0 10px 10px 10px;;width:290px;margin:20px auto;}.li{border:1px solid #dcdbdb;padding-left:10px;height:25px;line-height:25px;width:280px;margin:10px 0 0 0;}.singer_l_cont, .singer_r_img{float:left;}.singer_l_cont{width:145px;background:url(images/sing_per.gif) no-repeat left 12px;text-indent:23px;font-size:12px;}.singer_r_img{display:block;width:114px;height:52px;background:url(images/sing_week.gif) right 2px no-repeat;vertical-align:middle;float:right;*margin-bottom:-10px;}.singer_r_img:hover{background-position:right -53px;text-decoration:none;}.singer_r_img span{margin-left:14px;font-size:16px;font-family:'hiragino sans gb','microsoft yahei',sans-rif !important;font-weight:700;color:#165379;}.singer_r_img.current{background:url(images/sing_sing.gif) no-repeat 0 2px;}</style>  <div class="singer">    <div class="singer_l_cont">      <span>每天签到赢取pk币</span>    </div>    <div class="singer_r_r">      <a class="singer_r_img <?php echo $flag;?>" href="#" rel="external nofollow" >            <span id="sing_for_number"></span>      </a>    </div>  </div><!--singer end--><script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script><script type="text/javascript">/*签到模块日期捕捉:*/function week(){  var objdate= new date();  var week = objdate.getday();  switch(week)    {      ca 0:      week="周日";      break;      ca 1:      week="周一";      break;      ca 2:      week="周二";      break;      ca 3:      week="周三";      break;      ca 4:      week="周四";      break;      ca 5:      week="周五";      break;      ca 6:      week="周六";      break;    }  $("#sing_for_number").html( week );}$(document).ready(function(){  week();  var cache=new array(); // 缓存变量,当数据被访问过之后放置在缓存中,加快访问速度  $(".singer_r_img").click(function(){    // 如果缓存中存在数据,那么直接从缓存中读取;如果不存在数据,那么就从数据库中读取,并把数据存入缓存    if (typeof(cache['stop'])=='undefined') {    $.ajax({      url:"act地震中的感人故事ion.php?act=qiandao",      type:"post",      datatype:'json',      data:{        uid:1,      },      async:fal,      success:function(data){        // alert(data.msg);        switch(data.state){          ca 'success':            alert(data.msg);            break          ca 'stop':            cache['stop'] = data.msg;            alert(data.msg);            b滇池reak;        }        $(".singer_r_img").addclass("current");      }    })    }el{      alert(cache['stop'])    }  })})</script></body></html><?php  // 获取签到记录  $sign = $db -> lect('sign','*',array('uid'=>$uid,双曲线渐近线方程'order'=>'dateline desc'));?><ul class='ul'>  <?php  if(empty($sign)){  ?>    <li class="li">暂无签到信息</li>  <?php  }el{    foreach($sign as $k=>$v){  ?>      <li class="li"><span><?php echo ($k + 1);?></span><?php echo date('y-m-d h:i:s',$v['dateline']);?></li>  <?php    }  }  ?></ul>

本文发布于:2023-04-08 05:04:04,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/7d5e92798c5c6d9da7ead0be3872c5d4.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:PHP连续签到功能实现方法详解.doc

本文 PDF 下载地址:PHP连续签到功能实现方法详解.pdf

标签:缓存   数据   不存在   天数
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图