วันอังคารที่ 7 ธันวาคม พ.ศ. 2553

ปฎิทินกิจกรรม php calendar


<?php
function echoDate($y,$m,$d,$acts){
$ymd = sprintf("%04d-%02d-%02d",$y,$m,$d);
echo array_key_exists($ymd,$acts)
?'<a href="act.php?date='.$ymd.'" onclick="alert(\''.$acts[$ymd].'\');return false;">'.$d.'</a>'
:$d;
}
$y = empty($_GET['year'])?date('Y'):(int)$_GET['year'];
//สมมุติว่า $acts มาจาก database
$acts = array(
'2009-08-12'=>'activity1',
'2009-12-05'=>'activity2',
);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>calendar of year <?php echo $y;?></title>
<style type="text/css">
.w-s {color:red;}
.w-m {color:yellow;}
.w-tu {color:pink;}
.w-w {color:green;}
.w-th {color:orange;}
.w-f {color:blue;}
.w-st {color:violet;}
</style>
</head>
<body>
<h1 align="center">calendar of year <?php echo $y;?></h1>
<table cellpadding="10" align="center">
<?php
for($m=1;$m<=12;$m++):
$num = cal_days_in_month(CAL_GREGORIAN, $m, $y);
$fd = date('w',mktime(1, 1, 1, $m, 1, $y));
$d = 0;
?>
<?php if ($m%4 == 1):?>
<tr valign="top">
<?php endif;?>
<td>

<table border="1">
<caption><?php echo $m;?></caption>
<!-- first week -->
<tr><td class="w-s">s</td><td class="w-m">m</td><td class="w-tu">t</td>
<td class="w-w">w</td><td class="w-th">t</td><td class="w-f">f</td><td class="w-st">s</td>
<tr>
<?php if ($fd>0):?>
<td colspan="<?php echo $fd;?>">&nbsp;</td>
<?php endif;?>
<?php while($fd + $d++ < 7): ?>
<td><?php echoDate($y,$m,$d,$acts);?></td>
<?php endwhile; $d--; ?>
</tr>
<!-- second to fifth week -->
<?php for($x=0;$x<31;$x++): $xx=$x%7; ?>
<?php if ($xx==0):?><tr><?php endif;?>
<td><?php $d++; echoDate($y,$m,$d,$acts);?></td>
<?php if ($xx==6 || $d==$num):?>
<?php if ($xx!=6):?>
<td colspan="<?php echo 6-$xx;?>">&nbsp;</td>
<?php endif;?>
</tr>
<?php if ($d==$num){break;} ?>
<?php endif;?>
<?php endfor;?>
</table>

</td>
<?php if ($m%4 == 0):?>
</tr>
<?php endif;?>
<?php endfor;?>
</table>

<div align="center">
<?php foreach(range(2000,2021) as $year):?>
<a href="?year=<?php echo $year;?>"><?php echo $year;?></a>
<?php endforeach;?>
</div>
</body>
</html>

ไม่มีความคิดเห็น:

แสดงความคิดเห็น