ASP网页设计在ASP使用中考证用户身份(3)
结论:和PHP一样,ASP简单而易于维护,很适合小型网站应用,通过DCOM和MTS技术,ASP甚至还可以完成小规模的企业应用,但ASP的致命缺点就是不支持跨平台的系统,在大型项目开发和维护上非常困难。3、用户身份考证为复杂计,本文只会商在服务器真个用户身份考证。登录页面是经由过程挪用
ASPSecurity.inc中的signUserOn函数考证用户身份的。signUserOn反省数据库中
是不是存在和用户输出的名字、暗码婚配的纪录:
functionsignUserOn(aSignon,aPassword)
dimdict
用户输出的名字
aSignon=lcase(trim(aSignon))
用户输出的暗码
aPassword=lcase(trim(aPassword))
提取用户纪录转换成Dictionary工具
setdict=getUser(aSignon)
dict工具是不是包括了正当的用户信息
ifisUser(dict)then
ifnotdict("Password")=aPasswordthen
signUserOn=false
Session("msg")="暗码毛病."
exitfunction
endif
更新最初会见工夫
callupdateLastOn(aSignon)
用SessionID(或不撑持Cookies时,ID)标识用户纪录
ifnotSession("SupportsCookies")then
Session("ID")=getID()
dict.Add"SessionID",Session("ID")
else
dict.Add"SessionID",Session.SessionID
endif
纪录最初举动工夫
dict.add"LastActivity",now()
在Session中纪录以后用户信息
setSession("User")=dict
将以后用户到场正在会见用户列表
calladdUserToApplication(dict)
signUserOn=true
else
Session("msg")="用户称号毛病"
signUserOn=false
endif
endfunction
假如用户输出的名字和暗码与数据库中的纪录婚配,signUserOn函数前往
True。此时,用户被受权,Session("User")变量包括了一个Dictionary工具,个中
含有该用户的数据库纪录的字段称号和值。别的,这里还把Dictionary工具到场到
Application("User")数组,这是为了便于取得以后正在会见平安站点的用户清
单。signUserOn用到了ASPSecurity.inc中的很多子历程。因为年夜多半子历程都很
类似,上面只会商个中的getUser。该函数先毗连数据库,然后提取对应的用户记
录,最初将纪录转换为Dictionary工具并前往它,以下所示:
functiongetUser(aSignon)
dimconn
dimR
setconn=openConnection()
setR=conn.Execute("SELECT*FROMUsersWHEREUsers.Signon="&
aSignon&"")
iferr.number0then
输入毛病信息
......
response.end
endif
ifnotR.EOFthen
setgetUser=recordToDictionary(R)
else
setgetUser=nothing
endif
R.Close
setR=nothing
conn.close
setconn=nothing
endfunction
假如用户在注册页面中单击的是注册按钮,则在经由需要的反省以后就能够在数
据库中天生新的用户纪录了。注册乐成的用户会主动进进平安页面,这一部分操纵和
一般的登录历程是一样的。
身份考证和注册操纵都将毛病信息存储在Session("msg")变量中。这些毛病信
息能够显现在前往给用户的HTML页面中:
<%
ifSession("msg")""then
显现毛病信息
......
Session("msg")=""
endif
%>
优点:简单易学、开发速度快、有很多年“历史”,能找到非常多别人做好的程序来用、配合activeX功能强大,很多php做不到的asp+activeX能做到,例如银行安全控件 完全不知道到底自己学的是什么。最后,除了教程里面说的几个例子,还是什么都不会。 没有坚实的理论做基础,那么我们连踏入社会第一步的资本都没有,特别对于计算机专业的学生学好专业知识是置关重要的。在这里我侧重讲一下如何学习ASP,从平时的学习过程中。 我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。 完全不知道到底自己学的是什么。最后,除了教程里面说的几个例子,还是什么都不会。 运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。 最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。 不能只是将它停留在纸上谈兵的程度上。 ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。
页:
[1]