再现理想 发表于 2015-1-16 23:22:33

ASP教程之日历源程序

我想详细了解ASP整站代码与PSP整站代码有什么优缺点,那个更好,更安全,更用容易维护,和管理。。。程序|日历亮显现当天,可以拔取某天显现,并可以到场事务。
<%
*******************************************************
*ASP101SampleCode-http://www.asp101.com*
**
*Thiscodeismadeavailableasaservicetoour*
*visitorsandisprovidedstrictlyforthe*
*purposeofillustration.*
**
*Pleasedirectallinquiriestowebmaster@asp101.com*
*******************************************************
%>

<%
***BeginFunctionDeclaration***
NewandimprovedGetDaysInMonthimplementation.
ThankstoFlorentRenucciforpointingoutthatI
couldeasilyusethesamemethodIusedforthe
revisedGetWeekdayMonthStartsOnfunction.
FunctionGetDaysInMonth(iMonth,iYear)
DimdTemp
dTemp=DateAdd("d",-1,DateSerial(iYear,iMonth+1,1))
GetDaysInMonth=Day(dTemp)
EndFunction

PreviousimplementationonGetDaysInMonth
FunctionGetDaysInMonth(iMonth,iYear)
SelectCaseiMonth
Case1,3,5,7,8,10,12
GetDaysInMonth=31
Case4,6,9,11
GetDaysInMonth=30
Case2
IfIsDate("February29,"&iYear)Then
GetDaysInMonth=29
Else
GetDaysInMonth=28
EndIf
EndSelect
EndFunction

FunctionGetWeekdayMonthStartsOn(dAnyDayInTheMonth)
DimdTemp
dTemp=DateAdd("d",-(Day(dAnyDayInTheMonth)-1),dAnyDayInTheMonth)
GetWeekdayMonthStartsOn=WeekDay(dTemp)
EndFunction

FunctionSubtractOneMonth(dDate)
SubtractOneMonth=DateAdd("m",-1,dDate)
EndFunction

FunctionAddOneMonth(dDate)
AddOneMonth=DateAdd("m",1,dDate)
EndFunction
***EndFunctionDeclaration***


DimdDateDateweredisplayingcalendarfor
DimiDIMDaysInMonth
DimiDOWDayOfWeekthatmonthstartson
DimiCurrentVariableweusetoholdcurrentdayofmonthaswewritetable
DimiPositionVariableweusetoholdcurrentpositionintable


Getselecteddate.Therearetwowaystodothis.
FirstcheckifwewerepassedafulldateinRQS("date").
Ifsouseit,ifnotlookforseperatevariables,puttingthemtogeterintoadate.
Lastlycheckifthedateisvalid...ifnotusetoday
IfIsDate(Request.QueryString("date"))Then
dDate=CDate(Request.QueryString("date"))
Else
IfIsDate(Request.QueryString("month")&"-"&Request.QueryString("day")&"-"&
Request.QueryString("year"))Then
dDate=CDate(Request.QueryString("month")&"-"&Request.QueryString("day")&"-"
&Request.QueryString("year"))
Else
dDate=Date()
TheannoyinglybadsolutionforthoseofyourunningIIS3
IfLen(Request.QueryString("month"))0OrLen(Request.QueryString("day"))0Or
Len(Request.QueryString("year"))0OrLen(Request.QueryString("date"))0Then
Response.Write"Thedateyoupickedwasnotavaliddate.Thecalendar
wassettotodaysdate.<BR><BR>"
EndIf
TheelegantsolutionforthoseofyourunningIIS4
IfRequest.QueryString.Count0ThenResponse.Write"Thedateyoupickedwasnot
avaliddate.Thecalendarwassettotodaysdate.<BR><BR>"
EndIf
EndIf

Nowwevegotthedate.NowgetDaysinthechoosenmonthandthedayoftheweekitstartson.
iDIM=GetDaysInMonth(Month(dDate),Year(dDate))
iDOW=GetWeekdayMonthStartsOn(dDate)

%>
<!--OuterTableissimplytogettheprettyborder-->
<TABLEBORDER=10CELLSPACING=0CELLPADDING=0>
<TR>
<TD>
<TABLEBORDER=1CELLSPACING=0CELLPADDING=1BGCOLOR=#99CCFF>
<TR>
<TDBGCOLOR=#000099ALIGN="center"COLSPAN=7>
<TABLEWIDTH=100%BORDER=0CELLSPACING=0CELLPADDING=0>
<TR>
<TDALIGN="right"><AHREF="./calendar.asp?date=<%=
SubtractOneMonth(dDate)%>"><FONTCOLOR=#FFFF00SIZE="-1"><<</FONT></A></TD>
<TDALIGN="center"><FONTCOLOR=#FFFF00&gt</p>结论:和PHP一样,ASP简单而易于维护,很适合小型网站应用,通过DCOM和MTS技术,ASP甚至还可以完成小规模的企业应用,但ASP的致命缺点就是不支持跨平台的系统,在大型项目开发和维护上非常困难。

变相怪杰 发表于 2015-1-20 09:43:38

我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。

乐观 发表于 2015-1-20 19:31:48

代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。

精灵巫婆 发表于 2015-1-24 12:02:55

从事这个行业,那么你可以学ASP语言,简单快速上手,熟练dreamweav排版,写asp代码,熟练photoshop处理图片,打好基础就行了

若相依 发表于 2015-1-30 07:56:06

ASP也是这几种脚本语言中最简单易学的开发语言。但ASP也是这几种语言中唯一的一个不能很好支持跨平台的语言。  因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。

飘飘悠悠 发表于 2015-2-1 09:52:31

他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。

冷月葬花魂 发表于 2015-2-7 02:21:51

ASP的语言不仅仅只是命令格式差不多,而是包含在<%%>之内的命令完全就是VB语法。虽然ASP也是做为单独的一个技术来提出的,但他就是完全继承了VB所有的功能。

愤怒的大鸟 发表于 2015-3-6 15:20:20

ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程序。

再现理想 发表于 2015-3-13 03:09:30

弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。

再见西城 发表于 2015-3-20 11:04:30

还有如何才能在最短的时间内学完?我每天可以有效学习2小时,双休日4小时。
页: [1]
查看完整版本: ASP教程之日历源程序