预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共14页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

··第23章登录模块设计登录模块能够配合注册模块让网站应用能够同用户进行信息交互,当用户在网站进行注册后,就需要登录模块进行用户登录,登录模块虽然看上去比较容易,但是要比注册模块复杂一些,如身份处理,这些复杂的地方需要使用ASP.NET内置对象。23.1学习要点登录模块需要涉及到一些ASP.NET3.5的基本知识,如果要仔细学习注册模块的开发,需要详细了解本书的一些章节知识,这些章节如下所示:ASP.NET的网页代码模型。Web窗体基本控件。数据库基础。ADO.NET常用对象。Web窗体数据控件。ASP.NET内置对象。基本了解了以上章节的知识点后,就能够熟练学习和开发此模块。23.2系统设计登录模块需与注册模块不同的地方在于登录模块面向的用户有两种情况,一种是用户已经注册了,另一种是用户还没有注册,对于没有注册的用户需要引导到注册页面,而对于没注册的非法用户必须进行登录限制。23.2.1模块功能描述登录模块是配合注册模块的另一个非常重要的模块,相比之下,登录模块需要考虑更多的情况,例如用户是否注册,以及用户是否是合法用户,如果是合法用户忘记密码了怎么办,如果是非法用户,登录了多次是否要进行限制等等。登录模块的功能基本可以描述如图23-1所示。图23-1登录模块基本用户流程图从登录模块可以看出,当用户进行身份验证后,可能会出现几种情况,包括验证通过、忘记密码和循环身份验证。如果用户是一个正常的用户,可以说一次就能够通过验证,那么这个用户就可以进行后续操作;如果用户已经是注册的用户,但是却忘记了密码,可以通过邮件确认进行密码的索要;如果用户是非法用户,在不断的进行尝试,那么就要禁止非法用户的不断尝试。从上述流程基本上可以规划以下几个页面:登录页面:提供用户的主页面。忘记密码页面:提供用户索取密码后提示的页面。用户信息页面:提供用户登录成功后的个人信息页面。在这其中最主要的是登录页面和忘记密码页面,其中很多的函数的实现都需要在这个页面实现,而其他页面主要是作为提示页面存在的。该模块需要使用ASP.NET内置对象对用户的操作进行保存和限制。22.2.2模块流程分析在对业务进行了基本的划分之后,可以为模块进行基本的流程分析,包括这个模块中最基本的函数,以及这些函数在页面中是如何执行的。首先是登录模块需要提供哪些登录信息,登录模块中最重要的就是用户名和密码,登录模块通常情况下通过用户名和密码进行用户权限的判断。如果用户登录成功,那么用户就是一个合法用户,可以进行后续的操作,如果用户登录失败,则需要让用户选择是否继续登录或者说明忘记密码,如果用户反复尝试则可以认为这个用户可能是非法用户,需要禁止该用户继续进行登录。在了解了基本的模块流程分析后,就可以进行函数和页面的划分,如图23-2所示。图23-2基本页面的函数分析正如图23-2所示,这里主要起到作用的就是login.aspx页面,这个页面主要包括三个函数ifisuser、forget和forbidden,分别作为判断用户是否为正常用户,以及判断用户是否忘记密码和非法用户等操作。在用户正常登录后,可以使用Redirect方法进行页面跳转,如果用户忘记了密码,需要使用发送邮件函数进行邮件发送,如果用户是非法用户,则需要禁止用户的登录。23.3数据库设计对于登录表同样需要进行数据库设计,而登录表的数据库设计比较简单,只需要一个简单的用户表就能够进行登录设计。通常情况下注册模块和登录模块是一起协调合作的,登录模块读取用户表的信息而注册模块用于数据的索引和插入。23.3.1数据库设计分析对于数据库设计分析,只需要简单的进行用户信息表的设计就可以了,但是这里需要使用用户信息表中的邮箱信息进行验证,所以数据库中表的字段可以归纳如下:用户名:用户的用户名,用于登录使用。密码:用户的密码,用于登录中输入密码。email:用户的E-mail,用于发送邮件,如果用户忘记了密码就可以发送到该邮件。QQ/MSN:用户的QQ或MSN,用于连接。是否通过:用户的情况,用户保存用户信息,判断用户是否已经被通过。这里最主要的字段是email和password,这两个字段用于发送邮件到用户和判断用户是否被通过。如果用户忘记了密码,可以封锁该用户的用户信息然后发送邮件到用户的邮箱中,通过激活提示用户密码。23.3.2数据库表的创建创建表可以通过SQLServerManagementStudio视图进行创建也可以通过SQLServerManagementStudio查询使用SQL语句进行创建。登录模块的数据库