Calendar For Any Month Any Year

Description: Simple, nice looking calendar displays any month and year.

<?PHP
 
    # ***  Set time stamp.Check for month requested(value from request form)
    # ***  If no value has been set then make it for current month

   IF(!$year){$year=2000; }
     IF(!$req_month || $req_month=="none")
      {
         $dt_and_tm=TIME();
      }
      ELSE
      {
         $dt_and_tm=MKTIME(0,0,0,$req_month,1,$year);
      }
   # *** Find out the month number from the time stamp we just created
    # *** Find out the day of the week from the same(0 to 6 for Sunday to
    # *** Saturday) add "1" so that it becomes 1 to 7

         $month=DATE("n",$dt_and_tm);
         $week_day=DATE("w",$dt_and_tm)+1;
 
    # *** Set number days in requested month

IF($month==1 || $month==3 || $month==5 || $month==7 || $month==8 || $month==10 ||
$month==12)
{
   $no_of_days=31;
}
ELSEIF($month==4 || $month==6 || $month==9 || $month==11)
{
   $no_of_days=30;
}
 
 # *** If the month requested is Feb. Check whether it is Leap Year

ELSEIF($month==2)
{
                   IF(DATE("L",$dt_and_tm))
                   { $no_of_days=29 ;}
                   ELSE
                   {$no_of_days=28;}
}
   $month_full=DATE("F",$dt_and_tm);
 
 
# ************ HTML code goes from here
# ************ First row in HTML table displays month and year
# ************ Second row is allotted for week days
# ************ Table contains six more rows (total 42 table cells)
?>
<html>
<body>
<table width=300>
<tr bgcolor="#003366"><td colspan=7>
<font face="Arial , Times New Roman " size=2 color="#ffffff"><b>&LT;?PHP ECHO "$month_full
$year" ; ?></b></font></td></tr>
<tr bgcolor="#006699">
<td><font face="Arial , Times New Roman " size=2 color="#ffffff">Sun</fon></td><td><font
face="Arial , Times New Roman " size=2 color="#ffffff">Mon</font></td><td><font
face="Arial , Times New Roman " size=2 color="#ffffff">Tue</font></td><td><font
face="Arial , Times New Roman " size=2 color="#ffffff">Wed</font></td><td><font
face="Arial , Times New Roman " size=2 color="#ffffff">Thu</font></td><td><font
face="Arial , Times New Roman " size=2 color="#ffffff">Fri</font></td><td><font face="Arial ,
Times New Roman " size=2 color="#ffffff">Sat</font></td>
</tr>
<tr bgcolor="silver">
&LT;?PHP
 
# *** We need to start form week day and print total number of days
# *** in this month.For that we need to find out the last cell.
# *** While looping end current row and start new row for each 7 cells

$last_cell=$week_day+$no_of_days;
FOR($i=1;$i<=42;$i++)
{
   IF($i==$week_day){$day=1;}
   IF($i<$week_day || $i>=$last_cell)
   {
 
     ECHO "<td>?</td>";
      IF($i%7==0){ECHO "</tr><tr bgcolor=\"silver\">\n";}
   }
   ELSE
   {
 
        ECHO "<td>$day</td>";
        $day++;
       IF($i%7==0) { ECHO "</tr><tr bgcolor=\"silver\">\n"; }
 
   }
}
?>
</table></body></html>

Enjoyed this post? Share it!

 

Leave a comment

Your email address will not be published.