PHPによるカレンダーについて
PHPでカレンダーを作成しています。
プルダウンで年月を指定し、更新ボタンを押せば、指定した年月のカレンダーを表示させたいのですが、うまくいきません。
更新ボタンを押してもカレンダーが変わらないです。
KOMOカレンダーというサイトを参考にして、文字コードを変えただけです。
教えてくださる方がいらっしゃいましたら宜しくお願いいたします。
<?php
$last_year = 2037;
$wday_color = "#000000";
$sat_color = "#0000ff";
$sun_color = "#ff0000";
$reg_color = "#ffccff";
$year = (!isset($year)) ? date("Y") : $year;
$month = (!isset($month)) ? date("n") : $month;
?>
<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>カレンダー</TITLE>
</HEAD>
<BODY>
<P><FONT SIZE="6" COLOR="#006600">カレンダー</FONT></P>
<P>
<TABLE BORDER="1"CELLSPACING="1" CELLPADDING="1">
<TR>
<TD COLSPAN="7">
<SELECT NAME="year">
<?php
for($i = 2002; $i <= $last_year; $i++){
echo "<option value=".$i.(($i == $year) ? ' selected':'').">".$i."年\n";
}
?>
</SELECT>
<SELECT NAME="month">
<?php
for($i = 1; $i <= 12; $i++){
echo "<option value=" . $i . (($i == $month) ? ' selected':'').">".$i."月\n";
}
?>
</SELECT>
<INPUT TYPE="SUBMIT" NAME="Submit" VALUE="更新"></TD>
</TR>
<TR>
<TD>
<P ALIGN="CENTER"><FONT COLOR="red">日</FONT>
</TD>
<TD>
<P ALIGN="CENTER">月
</TD>
<TD>
<P ALIGN="CENTER">火
</TD>
<TD>
<P ALIGN="CENTER">水
</TD>
<TD>
<P ALIGN="CENTER">木
</TD>
<TD>
<P ALIGN="CENTER">金
</TD>
<TD>
<P ALIGN="CENTER"><FONT COLOR="blue">土</FONT>
</TD>
</TR>
<?php
$time = mktime(0, 0, 0, $month, 1, $year);
$day_of_first = date("w", $time);
$date_of_month = date("t", $time);
$week_of_month = ceil($date_of_month / 7);
if(($date_of_month % 7 > 7 - $day_of_first) || ($date_of_month % 7 == 0 && $day_of_first != 0)){
$week_of_month++;
}
for($i = 1; $i <= $week_of_month * 7; $i++){
if($i % 7 == 1){
echo "<tr>";
}
if(($i - 1 < $day_of_first) || ($i > $date_of_month + $day_of_first)){
echo "<td> </td>";
}else{
if($i % 7 == 1){
$color = $sun_color;
}elseif($i % 7 == 0){
$color = $sat_color;
}else{
$color = $wday_color;
}
echo "<td width=30 height=30 align=right valign=top>";
echo "<font color=" . $color . ">";
echo $i - $day_of_first;
echo "</font></td>";
}
if($i % 7 == 0){
echo "</tr>\n";
}
}
?>
</TABLE>
</FORM>
</BODY>
</HTML>