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('获取数据失败!');
            }
        }
    });
});

 

转载于:https://www.cnblogs.com/ziyandeyanhuo/p/10217952.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值