ASP编程:用ASP完成号码转换
缺乏可以共同遵循的行业标准,ASP还处在发展初期,大家对它的理解不同,如产品和服务标准,收费标准等,不利于行业的健康发展。<%*****BEGINFUNCTIONAREA*****
Formatsagiven10digitnumberintoanicelookingphonenumber
Example:givenstrNumberof8005551212youget(800)555-1212
FunctionFormatPhoneNumber(strNumber)
DimstrInputStringtoholdourenterednumber
DimstrTempTemporarystringtoholdourworkingtext
DimstrCurrentCharVarforstoringeachcharacterforeval.
DimILoopingvar
Uppercaseallcharactersforconsistency
strInput=UCase(strNumber)
Tobeabletohandlesomeprettybadformattingwestripout
allcharactersexceptforcharsAtoZanddigits0to9
beforeproceeding.Ileftinthecharsforstupidslogan
numberslike1-800-GET-CASHetc...
ForI=1ToLen(strInput)
strCurrentChar=Mid(strInput,I,1)
Numbers(0to9)
IfAsc("0")<=Asc(strCurrentChar)AndAsc(strCurrentChar)<=Asc("9")Then
strTemp=strTemp&strCurrentChar
EndIf
UpperCaseChars(AtoZ)
IfAsc("A")<=Asc(strCurrentChar)AndAsc(strCurrentChar)<=Asc("Z")Then
strTemp=strTemp&strCurrentChar
EndIf
NextI
SwapstrTempbacktostrInputfornextsetofvalidation
IalsoclearstrTempjustforgoodmeasure!
strInput=strTemp
strTemp=""
Removeleading1ifapplicable
IfLen(strInput)=11AndLeft(strInput,1)="1"Then
strInput=Right(strInput,10)
EndIf
ErrorcatchtomakesurestrInputisproperlengthnowthat
wevefinishedmanipulatingit.
IfNotLen(strInput)=10Then
Handleerrorsasyouseefit.Thisscriptraisesareal
errorsoyoucanhandleitlikeanyotherruntimeerror,
butyoucouldalsopassanerrorbackviathefunctions
returnvalueorjustdisplayamessage...yourchoice!
Err.Raise1,"FormatPhoneNumberfunction",_
"Thephonenumbertobeformattedmustbeavalid10digitUSphonenumber!"
Twoalternativeerrortechniques!
Response.Write"<B>Thephonenumbertobeformattedmustbeavalidphonenumber!</B>"
Response.End
Noteifyouusethisyoullalsoneedtocheckfor
thisbelowsoyoudontoverwriteit!
strTemp="<B>Thephonenumbertobeformattedmustbeavalidphonenumber!</B>"
EndIf
Ifanerroroccurredthentherestofthiswontgetprocessed!
Buildtheoutputstringformattedtoourliking!
(xxx)xxx-xxxx
strTemp="(""("
strTemp=strTemp&Left(strInput,3)Areacode
strTemp=strTemp&")"")"
strTemp=strTemp&Mid(strInput,4,3)Exchange
strTemp=strTemp&"-""-"
strTemp=strTemp&Right(strInput,4)4digitpart
Setreturnvalue
FormatPhoneNumber=strTemp
EndFunction
*****ENDFUNCTIONAREA*****
%>
<%RuntimeCode
DimstrNumberToFormatThephonenumberwepasstothefunction
Retrievetherequestednumberorsetittothedefault
IfRequest.QueryString("phone_number")""Then
strNumberToFormat=Request.QueryString("phone_number")
Else
strNumberToFormat="1-800-555-1212"
EndIf
Weneedtoturnthisonifwewanttotraperrors.
Otherwisethescriptwouldgenerateanerroriftheinput
numberwasntcorrect.
OnErrorResumeNext
%>
<TABLEBORDER="1">
<TR>
<TD>Phonenumberbeforeformatting:</TD>
<TD><%=strNumberToFormat%></TD>
</TR>
<TR>
<TD>Phonenumberafterformatting:</TD>
<TD>
<%
Callthefunctionandoutputtheresults
Response.WriteFormatPhoneNumber(strNumberToFormat)
Checkforanerroranddisplaythemessageifoneoccurred
IfErr.numberThenResponse.WriteErr.description
%>
</TD>
</TR>
</TABLE>
<FORMACTION="39.asp"METHOD="get">
Phonenumbertoformat:<INPUTTYPE="text"NAME="phone_number"VALUE="<%=strNumberToFormat%>">
<INPUTtype="submit"value="Submit">
</FORM>ASP最大的缺点在于网络的安全性和可靠性,企业将经营数据放在开放的平台上,最大的担忧就是如何保证这些数据不被其他人破坏。 还有如何才能在最短的时间内学完?我每天可以有效学习2小时,双休日4小时。 Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点) 以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。 你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。 多看多学多思。多看一些关于ASP的书籍,一方面可以扩展知识面一方面可以鉴借别人是如何掌握、运用ASP的;多学善于关注别人,向同学老师多多学习,不论知识的大小;多思则是要将学到的知识灵活运用。 学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点: 兴趣爱好,那么你无须学编程,申请一个域名和空间,在网上下载一些免费开源的CMS系统,你不用改代码,只须熟悉它们的后台操作,像office一样简单方便,很快就能建一个站点,很多站长都是这样做的 另外因为asp需要使用组件,所以了解一点组件的知识(ADODB也是组件) 作为IE上广为流传的动态网页开发技术,ASP以它简单易学博得了广大WEB程序爱好这的青睐,而且它对运行环境和开发品台的不挑剔,以及有大量有效的参考手册,极大的推广了它的发展。
页:
[1]