php日历与上一个和下一个不重新加载页面


php calendar with previous and next not reloading the page

我需要在页面的侧边栏上包含一个php日历。

我使用的是几周前发现的一个片段,就像我以前使用过的一样,效果很好。但这一次,我必须添加下一个和上一个按钮来显示上个月或下个月。。。

我的问题是…我需要修改生成当前月份的php吗?

这就是我目前所拥有的:

    <table class="month">
    <tr class="days">
        <td>Mon</td>
        <td>Tues</td>
        <td>Wed</td>
        <td>Thurs</td>
        <td>Fri</td>
        <td>Sat</td>
        <td>Sun</td>
    </tr>
        <?php 
    $today = date("d"); // Current day
    $month = date("m"); // Current month
    $year = date("Y"); // Current year
    $days = cal_days_in_month(CAL_GREGORIAN,$month,$year); // Days in current month
    $lastmonth = date("t", mktime(0,0,0,$month-1,1,$year)); // Days in previous month
    $start = date("N", mktime(0,0,0,$month,1,$year)); // Starting day of current month
    $finish = date("N", mktime(0,0,0,$month,$days,$year)); // Finishing day of  current month
    $laststart = $start - 1; // Days of previous month in calander
    $counter = 1;
    $nextMonthCounter = 1;
    if($start > 5){ $rows = 6; }else {$rows = 5; }
    for($i = 1; $i <= $rows; $i++){
        echo '<tr class="week">';
        for($x = 1; $x <= 7; $x++){             
            if(($counter - $start) < 0){
                $date = (($lastmonth - $laststart) + $counter);
                $class = 'class="blur"';
            }else if(($counter - $start) >= $days){
                $date = ($nextMonthCounter);
                $nextMonthCounter++;
                $class = 'class="blur"';
            }else {
                $date = ($counter - $start + 1);
                if($today == $counter - $start + 1){
                    $class = 'class="today"';
                }
            }

            echo '<td '.$class.'><span class="dayWrap">'. $date . '</span></td>';
            $counter++;
            $class = '';
        }
        echo '</tr>';
    }
?>
</table>
  <div class="changeMonthLinks">
  <a class="col-xs-12" href="">< Prev</a>
  <a class="col-xs-12 aright" href="">Next ></a>
  </div>

我只是不知道该怎么办。。。或者我需要在锚标签中添加什么:S

任何帮助都将不胜感激。

谢谢非常感谢。

我现在已经为参数添加了$?现在在url中,我用strtotime将其解析为变量$dtNow,所有的日期函数都被扩展,底部的链接都用?now=$dtNow+1个月后?now=$dtNow-月

这是代码

<?php
$now = '';
if(isset($_GET['now']))
    $now = $_GET['now'];
$dtNow = strtotime($now);
if(!$dtNow)
{
    $dtNow = time();
}
echo "<h1>Today is " . date('Y-m-d', $dtNow) . "</h1>";
?>
<table class="month">
    <tr class="days">
        <td>Mon</td>
        <td>Tues</td>
        <td>Wed</td>
        <td>Thurs</td>
        <td>Fri</td>
        <td>Sat</td>
        <td>Sun</td>
    </tr>
    <?php

    $today = date("d", $dtNow); // Current day
    $month = date("m", $dtNow); // Current month
    $year = date("Y", $dtNow); // Current year
    $days = cal_days_in_month(CAL_GREGORIAN,$month,$year); // Days in current month
    $lastmonth = date("t", mktime(0,0,0,$month-1,1,$year)); // Days in previous month
    $start = date("N", mktime(0,0,0,$month,1,$year)); // Starting day of current month
    $finish = date("N", mktime(0,0,0,$month,$days,$year)); // Finishing day of  current month
    $laststart = $start - 1; // Days of previous month in calander
    $counter = 1;
    $nextMonthCounter = 1;
    if($start > 5){ $rows = 6; }else {$rows = 5; }
    for($i = 1; $i <= $rows; $i++){
        echo '<tr class="week">';
        for($x = 1; $x <= 7; $x++){
            if(($counter - $start) < 0){
                $date = (($lastmonth - $laststart) + $counter);
                $class = 'class="blur"';
            }else if(($counter - $start) >= $days){
                $date = ($nextMonthCounter);
                $nextMonthCounter++;
                $class = 'class="blur"';
            }else {
                $date = ($counter - $start + 1);
                if($today == $counter - $start + 1){
                    $class = 'class="today"';
                }
            }

            echo '<td '.$class.'><span class="dayWrap">'. $date . '</span></td>';
            $counter++;
            $class = '';
        }
        echo '</tr>';
    }
    ?>
</table>
<div class="changeMonthLinks">
    <a class="col-xs-12" href="?now=<?php echo date('Y-m-d', $dtNow - 30*24*60*60); ?>">< Prev</a>
    <a class="col-xs-12 aright" href="?now=<?php echo date('Y-m-d', $dtNow + 30*24*60*60); ?>">Next ></a>
</div>