PHP 日历签到模块

Create Table

CREATE TABLE `tb_signinfo` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT ‘记录每条签到详情‘,
`memberID` int(11) DEFAULT NULL COMMENT ‘关联member表ID‘,
`signdate` int(8) DEFAULT NULL COMMENT ‘记录签到日期,格式:年月日‘,
`credit` int(255) DEFAULT NULL COMMENT ‘记录每次签到所赠送的积分值‘,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=17 DEFAULT CHARSET=utf8

<style type="text/css">
#tc_calendar{width:100%;}
#tc_title{height:33px;line-height:33px;text-align:right;overflow:hidden;}
#tc_title strong{font-weight:bold;font-size:14px;}
#tc_calendar{border-collapse:collapse;}
#tc_calendar td{text-align:center;width:35px;height:20px;line-height:20px;background-color:#efefef;border-bottom:1px solid #fff;border-right:1px solid #fff;}
#tc_calendar .even td{background-color:#e6e6e6;}
#tc_calendar td .current2{display:block;background-color:#f60;color:#fff;}
#tc_calendar .current{background-color:#cf0!important;color:#000;}
#tc_calendar .current2{background-color:#f60!important;color:#000;}
#tc_week td{color:#fff;background-color:#373737;}
</style>
<?php
$mdays=date("t"); //当月总天数
$datenow=date("j"); //当日日期
$monthnow=date("n"); //当月月份
$yearnow=date("Y"); //当年年份
//计算当月第一天是星期几
$wk1st=date("w",mktime(0,0,0,$monthnow,1,$yearnow));
$trnum=ceil(($mdays+$wk1st)/7); //计算表格行数
//以下是表格字串
$tabstr="<table id=tc_calendar><tr id=tc_week><td>日</td><td>一</td><td>二</td><td>三</td><td>四</td><td>五</td><td>六</td></tr>";
for($i=0;$i<$trnum;$i++) {
$tabstr.="<tr class="even">";
for($k=0;$k<7;$k++) { //每行七个单元格
$tabidx=$i*7+$k; //取得单元格自身序号
//若单元格序号小于当月第一天的星期数($wk1st)或大于(月总数+$wk1st)
//只填写空格,反之,写入日期
($tabidx<$wk1st or $tabidx>$mdays+$wk1st-1) ? $dayecho="&nbsp" : $dayecho= $tabidx-$wk1st+1;
//拼装年月日
if($monthnow<10){$m = "0".$monthnow;}else{$m = $monthnow;};
if($dayecho<10){$d = "0".$dayecho;}else{$d = $dayecho;};
$ymd = $yearnow.$m.$d;
//拼装后的日期信息与数据库做比对。 数据库日期格式20150611
//我这里使用的是CI框架。
$sql = "select signdate from tb_signinfo where signdate=‘".$ymd."‘";
$result = $this->db->query($sql)->num_rows;
if($result != 0){
$todaybg = " class="current2"";
}
else
{
$todaybg = "";
}
//这里突出标明今日日期 与上面的签到显示代码是重复的,如果需要两种效果同时实现,自行处理判断语句即可
/*if($dayecho==$datenow){
$todaybg = " class="current2"";
}
else
{
$todaybg = "";
}*/
$tabstr.="<td".$todaybg.">$dayecho</td>";
}
$tabstr.="</tr>";
}
$tabstr.="</table>";
?>
<div id="tc_calendardiv"><div id="tc_title"><strong><?=$yearnow?>年 <?=$monthnow?>月</strong></div>
<?php echo $tabstr;?>
</div>

时间: 2024-08-30 07:36:19

PHP 日历签到模块的相关文章

jquery日历签到控件的实现

calendar.js var calUtil = { //当前日历显示的年份 showYear:2015, //当前日历显示的月份 showMonth:1, //当前日历显示的天数 showDays:1, eventName:"load", //初始化日历 init:function(signList){ calUtil.setMonthAndDay(); calUtil.draw(signList); calUtil.bindEnvent(); }, draw:function(s

Python日历模块总结

calendar模块的函数都是日历相关的,提供了对日期的一些操作方法,和生成日历的方法. calendar模块中提供了三大类: 一.calendar.Calendar(firstweekday=0) 该类提供了许多生成器,如星期的生成器,某月日历生成器 二.calendar.TextCalendar(firstweekday=0) 该类提供了按月.按年生成日历字符串的方法. 三.calendar.HTMLCalendar(firstweekday=0) 类似TextCalendar,不过生成的是

Python calendar日历模块的说明

calendar(日历)模块,默认每周第一天是星期一,最后一天是星期天. 函数及描述 1. calendar.calendar(year, w=2, l=1, c=6, m=3) 返回一个多行字符串格式的year年年历. 2. calendar.firstweekday() 返回当前每周起始日期的设置.默认返回0,即星期一. 3. calendar.isleap(year) 闰年返回True,否则False. 4. calendar.leapdays(y1, y2) 返回y1到y2之间的闰年总数

Python中的时间模块和日期模块

Python 日期和时间 Python 程序能用很多方式处理日期和时间,转换日期格式是一个常见的功能. Python 提供了一个 time 和 calendar 模块可以用于格式化日期和时间. 时间间隔是以秒为单位的浮点小数. 每个时间戳都以自从1970年1月1日午夜(历元)经过了多长时间来表示. Python 的 time 模块下有很多函数可以转换常见日期格式.如函数time.time()用于获取当前时间戳, 如下实例: #!/usr/bin/python # -*- coding: UTF-

JS实现日历

7.2-- 以前写特效都用jquery,js使用还不熟的很,最近又在看<javascript权威指南>,正好公司的项目有个日历签到的功能,就先用js写个日历控件试试,目前还只实现了基本的功能,先贴代码: html 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <title></title> 5 <meta charset="utf-8"> 6 <link rel=&q

Python时间calender模块介绍

获取某月日历 Calendar模块有很广泛的方法用来处理年历和月历,例如打印某月的月历: #!/usr/bin/python # -*- coding: UTF-8 -*- import calendar cal = calendar.month(2016, 1) print "以下输出2016年1月份的日历:" print cal; 以上实例输出结果: 以下输出2016年1月份的日历: January 2016 Mo Tu We Th Fr Sa Su 1 2 3 4 5 6 7 8

基于AccessibilityService制作的钉钉自动签到程序

标签: 移动开发安卓自动化操作 2015-12-03 09:56 1736人阅读 评论(10) 收藏 举报 分类: Android(3) 版权声明:本文为博主原创文章,未经博主允许不得转载. 前两天公司开始宣布要使用阿里钉钉来签到啦!!!~~这就意味着,我必须老老实实每天按时签到上班下班了,这真是一个悲伤的消息,可是!!!!那么机智(lan)的我,怎么可能就这么屈服!!!阿里钉钉签到,说到底不就是手机软件签到吗?我就是干移动开发的,做一个小应用每天自动签到不就行了:) 说干就干,首先分析一下,阿

Day05 - Python 常用模块

1. 模块简介 模块就是一个保存了 Python 代码的文件.模块能定义函数,类和变量.模块里也能包含可执行的代码. 模块也是 Python 对象,具有随机的名字属性用来绑定或引用. 下例是个简单的模块support.py 1 def print_func( par ): 2 print("Hello : ", par) 3 return 1)import 语句 想使用 Python 源文件,只需在另一个源文件里执行 import 语句,语法如下: import module1[, m

PHP连续签到

require "./global.php"; $act = isset($_GET['act']) ? $_GET['act'] : "error"; // d($act); switch($act){ case "qiandao": $uid = intval($_POST['uid']); $res = $db -> get('qian_dao','*',array('uid'=>$uid)); // last_query();