ASP日历 实现遍历数据库取出对应的年月日数据

王朝学院·作者佚名  2009-05-05
窄屏简体版  字體: 小  |  中  |  大  |  超大  

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>

<%

response.charset = "UTF-8"

session.codepage = 65001

session.timeout = 1440

server.scripttimeout = 9999

%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<meta http-equiv="Content-Language" content="zh-CN" />

<title>纯ASP日历</title>

<style>

body{font-size:12px; margin:20px 0 0 20px; padding:0}

tr,td{text-align:center;}

</style>

</head>

<body>

<%

'=================================

'说明:日历文件

'=================================

'取出对应的年月日数据

'=======================

Ryear = CInt(request.querystring("year"))

Rmonth = CInt(request.querystring("month"))

If Ryear = 0 or Ryear = NULL Then Ryear = year(now)

If Rmonth = 0 or Rmonth = NULL Then Rmonth = month(now)

nowtime = Ryear&"-"&Rmonth&"-1" '得到本月第一天

nowyear = year(nowtime) '年份

nowmonth = month(nowtime) '月份

nowweekday = weekday(nowtime) - 1 '当前礼拜

'获取2月天数

febdays = 28

If nowyear / 4 = 0 Then febdays = 29

'获取本月天数

If nowmonth = 1 then

monthdays = 31

ElseIf nowmonth = 2 Then

monthdays = febdays

ElseIf nowmonth = 3 Then

monthdays = 31

ElseIf nowmonth = 4 Then

monthdays = 30

ElseIf nowmonth = 5 Then

monthdays = 31

ElseIf nowmonth = 6 Then

monthdays = 30

ElseIf nowmonth = 7 Then

monthdays = 31

ElseIf nowmonth = 8 Then

monthdays = 31

ElseIf nowmonth = 9 Then

monthdays = 30

ElseIf nowmonth = 10 Then

monthdays = 31

ElseIf nowmonth = 11 Then

monthdays = 30

Else

monthdays = 31

End If

calendar = "<a href='calendar.asp?year="&nowyear - 1&"&month="&nowmonth&"'> <<</a> "

willshowmonthmonth = nowmonth

If willshowmonthmonth - 1 <= 0 Then willshowmonthmonth = 2

calendar = calendar & "<a href='calendar.asp?year="&nowyear&"&month="&willshowmonthmonth - 1&"'> <</a> "

If willshowmonthmonth + 1 > 12 Then willshowmonthmonth = 11

calendar = calendar & "<a href='calendar.asp?year="&nowyear&"&month="&willshowmonthmonth + 1&"''> ></a> "

calendar = calendar & "<a href='calendar.asp?year="&nowyear + 1&"&month="&nowmonth&"'> >></a> "

calendar = calendar & "<table bgcolor=#000000 cellspacing=1 width=200><tr bgcolor=#ffffff><td colspan=7>"&nowyear&"-"&nowmonth&"-"&day(now)&"</td></tr>"&VBCRLF

calendar = calendar & " <tr bgcolor=#ffffff>"&VBCRLF

calendar = calendar & "<td>日</td>"&VBCRLF

calendar = calendar & "<td>一</td>"&VBCRLF

calendar = calendar & "<td>二</td>"&VBCRLF

calendar = calendar & "<td>三</td>"&VBCRLF

calendar = calendar & "<td>四</td>"&VBCRLF

calendar = calendar & "<td>五</td>"&VBCRLF

calendar = calendar & "<td>六</td>"&VBCRLF

calendar = calendar & "</tr>"&VBCRLF

calendar = calendar & VBCRLF&"<tr bgcolor=#ffffff>"&VBCRLF

'http://www.knowsky.com/ 把前面的空白补充出来

nowmonthfirstiweekday = weekday(nowyear&"-"&nowmonth&"-1") - 2 '本月第一天的星期

For i=0 To nowmonthfirstiweekday

calendar = calendar & "<td bgcolor=#efefef> </td>"&VBCRLF

Next

'开始循环写日期

t=1

For i=1 To monthdays

If year(now) = year(nowyear&"-"&nowmonth&"-"&i) and day(now) = day(nowyear&"-"&nowmonth&"-"&i) Then '高亮显示今日

calendar = calendar & "<td bgcolor=#cccccc><a href=''>"&i&"</a></td>"&VBCRLF

Else

calendar = calendar & "<td>"&i&"</td>"&VBCRLF

End If

If weekday(nowyear&"-"&nowmonth&"-"&i) = 7 Then

t=t+1

calendar = calendar & "</tr><tr bgcolor=#ffffff>"&VBCRLF

End if

Next

For i=1 To (7*t-(nowmonthfirstiweekday+1+monthdays))

calendar = calendar & "<td bgcolor=#ffffff></td>"&VBCRLF

Next

calendar = calendar & VBCRLF&"</tr>"

calendar = calendar & "</table>"&VBCRLF

Response.Write calendar

%>

</body>

</html>

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航