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日历,首先必须解决的问题是表格的行与列问题.列是固定的,七列,因为一周有七天.行需要动态计算,因为,每一个月的第一 ...
随机推荐
- 【算法】欧几里得算法与青蛙约会oj
欧几里得和扩展欧几里得算法 题目: poj 1061 poj 2142 双六 扩展欧几里得算法详解 先说欧几里得算法:欧几里得算法辗转相除求\(gcd\).求\(a.b\)的\(gcd\),则利用的性 ...
- Java PDF转图片
maven依赖: <dependency> <groupId>org.apache.pdfbox</groupId> <artifactId>pdfbo ...
- postgresql数据库去重方法
数据库去重有很多方法,下面列出目前理解与使用的方法 第一种 通过group by分组,然后将分组后的数据写入临时表然后再写入另外的表,对于没有出现再group by后面的field可以用函数max,m ...
- docker 镜像备份magento 2.2.3
打包百度网盘: 链接:https://pan.baidu.com/s/1i_lSLt48RlxPonVA7qG5kg 密码:h1de 还原:docker load < (filename).t ...
- JumpServer1.0 服务搭建
JumpServer1.0 服务搭建 系统环境配置 setenforce 0 systemctl stop iptables.service systemctl stop firewalld.serv ...
- 搭建Linux下的SVN服务器
______________________________________________配置SVN步骤______________________________________________ ...
- 通过10046 event来获取真实的执行计划
获取SQL执行计划的方式有很多,但是某些时候获取的SQL执行计划并不是准确的,只有在SQL真实执行之后获取到的SQL PLAN才是真实准确的,其他方式(如,explain plan)获取到的执行计划都 ...
- <数据结构基础学习>(五)递归
一. 递归 本质上,将原来的问题,转化为更小的同样的问题 举例:数组求和 Sum(arr[0... n-1]) = arr[0] + Sum(arr[1...n-1]) 第二部分为更小的同一个问题 ...
- LeetCode--689_Maximum_Sum_of_3_NonOverlapping_Subarrays
原题链接:点击这里 一道很水很水的背包问题? 大概算不上背包吧QAQ 自己的dp 真的是太差劲啦,以后每天一道LeetCode 备战秋招! package leetcode; public class ...
- 第四十一篇-android studio 关闭自动保存功能
此方法不可用. 第一步:取消自动保存功能 File > Settings > Appearance & Behavior > System Settings > Syn ...