PHP系列之日历程序

 

 

<head>
<style>
th{font-family:隶书;color:#0099ff;}
table{background:#99ffcc;}
#tr1{background:#00ccff;}
.td1{color:#009999;}
a{color:#ff9900;}
</style>
</head>
<body>
<?php
//php日历
//1.date()函数获取当前的年月
$year=$_GET["y"]?$_GET["y"]:date("Y");
$mon=$_GET["m"]?$_GET["m"]:date("m");
//2.mktime()函数的使用,获取当前月的天数及当月1号的星期
$day=date("t",mktime(0,0,0,$mon,1,$year));
$w=date("w",mktime(0,0,0,$mon,1,$year));
//3.输出日历的头部信息
echo"<center>";
echo"<table border='0'>";
echo"<h3><font color='#00ff33'font-face='隶书'>{$year}年{$mon}月</font></h3>";
echo "<tr id='tr1'onmouseOver='overTr(this)'onmouseOut='outTr(this)'>";
echo "<th style='color:#ff0000;'onmouseOver='overTr(this)'onmouseOut='outTr(this)'>日</th>";
echo "<th class='td1'>一</th>";
echo "<th class='td1'>二</th>";
echo "<th class='td1'>三</th>";
echo "<th class='td1'>四</th>";
echo "<th class='td1'>五</th>";
echo "<th style='color:#ff0000;'>六</th>";
echo "</tr>";
//4.遍历输出日历
$d=1;
while($d<=$day){
	echo"<tr onmouseOver='overTr(this)'onmouseOut='outTr(this)'>";
	for($i=1;$i<=7;$i++){//循环输出7天信息
		if($d<=$day&&($w<=$i||$d!=1)){
			echo "<th>{$d}</th>";
			$d++;
		}else{
			echo"<th> </th>";
		}
	}
}
//5.处理上下月,上下年的信息
$prey=$nexty=$year;
$prem=$nextm=$mon;
if($prem<=1){
$prem=12;
$prey--;
}else{
$prem--;
}
if($nextm>=12){
$nextm=1;
$nexty++;
}else{
$nextm++;
}

$prey=$year-1;//上一年
$nexty=$year+1;//上一月
//超链接
echo "<tr  onmouseOver='overTr(this)'onmouseOut='outTr(this)'><td colspan='7'align='center'>";

echo"<a href='sy1.php?y={$prey}'><<</a> ";
echo "<font face='隶书'color='#663399'>{$year}年</font> ";
echo "<a href='sy1.php?y={$nexty}'>>></a>  ";

echo"  ";

echo"<a href='sy1.php?m={$prem}'><</a> ";
echo "<font face='隶书'color='#663399'>{$mon}月</font> ";
echo "<a href='sy1.php?m={$nextm}'>></a>";

echo "</td></tr>";
echo"</table>";
echo"</center>";
?>

<script type='text/JavaScript'>
var oriCol=null;
function  overTr(obj){
oriCol=obj.bgColor;
obj.bgColor='#00ff99';
}
function outTr(obj){
obj.bgColor=oriCol;	
}

</script>
</body>
</html>

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

smileNicky

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值