php 日历代码
日历的PHP接口代码:
$user_id = $_SESSION['user_id'];
$year = isset($_REQUEST['tty']) ? intval($_REQUEST['tty']) : date('Y');
$month = isset($_REQUEST['ttm']) ? intval($_REQUEST['ttm']) : date('m');
//获取当前月有多少天
$days = date('t', strtotime("{$year}-{$month}-1"));
// 当前1号是星期几
$week = date('w', strtotime("{$year}-{$month}-1"));
// 实现上一月和上一年
if ($month == 1) {
$premonth = 12;
$preyear = $year - 1;
} else {
$premonth = $month - 1;
$preyear = $year;
}
// 实现下一月和下一年
if ($month == 12) {
$nextmonth = 1;
$nextyear = $year + 1;
} else {
$nextmonth = $month + 1;
$nextyear = $year;
}
$dayss = array();
for ($i = 1; $i <= $week; $i++) {
$dayss[] = '';
}
for ($i = 1; $i <= $days; $i++) {
$dayss[] = $i;
}
// 获取签到所有数据(本月中)
$start = strtotime("{$year}-{$month}-1");
$end = strtotime("{$nextyear}-{$nextmonth}-1") - 1;
$logsql = 'SELECT * FROM ' . $ecs->table('hpyer_sign_log') . " where uid={$user_id} AND add_time between {$start} AND {$end}";
$loglist = $db->getAll($logsql);
$loginfo = array();
foreach ($loglist as $v) {
$loginfo[] = intval(date('d', $v['add_time']));
} $result = array(
'code' => 1,
'data' => array(
'year' => $year,
'month' => $month,
'preyear' => $preyear,
'premonth' => $premonth,
'nextyear' => $nextyear,
'nextmonth' => $nextmonth,
'days' => $dayss,
'loginfo' => $loginfo
)
);
die($jsonr->encode($result));
HTML接口说明:
$('.riQh').on('click', function() {
var tty = $(this).attr('tty'),
ttm = $(this).attr('ttm');
$.ajax({
url: '/mobile/ajaxnew.php',
data: {
act: 'rili',
tty: tty,
ttm: ttm
},
type: 'post',
dataType: 'json',
success: function(res) {
console.log(res);
if (res.code == 1) {
$('.riz').attr('tty', res.data.preyear);
$('.riz').attr('ttm', res.data.premonth);
$('.riy').attr('tty', res.data.nextyear);
$('.riy').attr('ttm', res.data.nextmonth);
$('#nowdate').text(res.data.year + '年' + res.data.month + '月');
var zoninfo = '';
for (var i = 0; i < res.data.days.length; i++) {
if(res.data.loginfo.indexOf(res.data.days[i]) >-1){
zoninfo += '<li class="active">'+res.data.days[i]+'</li>';
}else{
zoninfo += '<li>'+res.data.days[i]+'</li>';
}
}
$('#rilihtml').html(zoninfo);
} else {
alert('获取数据失败!');
}
}
});
});
php 日历代码的更多相关文章
- java 日历代码实现
System.out.println("请输入日期(按照格式:2030-3-10):"); //在控制台输入 //String str="2016-9-26"; ...
- PyQt4 进度条和日历 代码
# -*- coding: utf-8 -*- """ ------------------------------------------------- File Na ...
- java中日历代码的实现
import java.util.Scanner; com.lv.calendarWatch//包名 /* * 需求:输入一个年份和月份 ,显示当前月日情况 ,星期数要对应准确 * 1.1900年1月 ...
- [AY技术分享]WPF AYUI的高大上日历代码
看到这里,也谢谢大家关注了AYUI 这次讲的是AY最近没事开发的AyDatePicker,先看效果图 SelectMode=DateTime模式 SelectMode=OnlySelectDate模式 ...
- Android 一个日历控件的实现代码
转载 2017-05-19 作者:Othershe 我要评论 本篇文章主要介绍了Android 一个日历控件的实现代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随小编过来看 ...
- js编写当天简单日历
之前一直很想用javascript写一个日历,但是因为完全没有好的思路, 所以迟迟没有尝试.最近在网上刚好看到用javascript编写的简单日历的例子,代码量虽然不大, 但是我觉得很好地阐述了js日 ...
- 用JS编写日历的简单思路
提要:本文以写当前时间环境下当月的日历表为例,用最简单的方法实现JavaScript日历,旨在展示JS世界中实用为本.简单为上的解决问题的思路. Web页中的日历一般离不开表格,通常都使用表格装载指定 ...
- 推荐一款JavaScript日历控件:kimsoft-jscalendar
一.什么是 kimsoft-jscalendar 一个简洁的avaScript日历控件,可在Java Web项目,.NET Web 项目中使用 二.kimsoft-jscalendar 有什么 ...
- 自定义javascript日历控件
Web页中的日历一般离不开表格,通常都使用表格装载指定月的日期等信息.所以,要编写JS日历,首先必须解决的问题是表格的行与列问题.列是固定的,七列,因为一周有七天.行需要动态计算,因为,每一个月的第一 ...
随机推荐
- Nginx从入门到实践(四)
Nginx常见问题和排错经验,实践应用场景中的方法处理Nginx安全,常见的应用层安全隐患,复杂访问控制,Nignx的sql防注入安全策略,Nginx的整体配置,搭建合理Nginx中间件架构配置步骤. ...
- web自动化框架如何设计
web自动化框架如何设计po模式总结: 1. 页面对象模型:当页面特别多的时候,代码更好的维护 2. Po是pageObject设计模式,用来管理和维护一组web元素的对象库 3. 每一个page c ...
- Mac anaconda安装 “conda command not found” 解决方法
官网下载包直接安装的时候可能会产生这种问题,这主要还是环境变量配置的问题 一般我们添加环境变量的方法是编辑.bash_profile或.bashrc,在文件里插入下面这段代码 export PATH= ...
- found 12 vulnerabilities (7 moderate, 5 high) run `npm audit fix` to fix them, or `npm audit` for details
npm 安装包之后,如果出现类似下面的信息 found 12 vulnerabilities (7 moderate, 5 high) run `npm audit fix` to fix them, ...
- Java代码的编译与反编译那些事儿
原文:Java代码的编译与反编译那些事儿 编程语言 在介绍编译和反编译之前,我们先来简单介绍下编程语言(Programming Language).编程语言(Programming Language) ...
- Python3开发过程常见的异常(最近更新:2019-04-26)
持续更新中... 常见异常解决方案 1.Base Python3.7环境相关:https://www.cnblogs.com/dotnetcrazy/p/9095793.html 1.1.Indent ...
- atomic详解
http://www.360doc.com/content/14/1120/21/203028_426770242.shtml
- JAVA之锁-volatile
锁是JAVA多线程关键,也是面试中必问的, 在此好好总结一下. (先要从进程和线程说起,此处先欠下,回头专门说一下操作系统是怎么管理进程和线程的) 说到多线程就要说说JAVA的内存模型:图片来自于网络 ...
- 面向对象学习(python)
面向对象总结 一.面向对象与面向过程的区别 面向过程:根据业务逻辑从上到下写垒代码 面向对象:对函数进行分类和封装,让开发“更快更好更强...” 1.面向过程编程: 概念:发过程中最常见的操作就是粘贴 ...
- python 使用win32com实现对word文档批量替换页眉页脚
最近由于工作需要,需要将70个word文件的页眉页脚全部进行修改,在想到这个无聊/重复/没有任何技术含量的工作时,我的内心是相当奔溃的.就在我接近奔溃的时候我突然想到完全可以用python脚本来实现这 ...