web应用程序开发第11章

上传人:今*** 文档编号:106968141 上传时间:2019-10-17 格式:PPT 页数:86 大小:1.99MB
返回 下载 相关 举报
web应用程序开发第11章_第1页
第1页 / 共86页
web应用程序开发第11章_第2页
第2页 / 共86页
web应用程序开发第11章_第3页
第3页 / 共86页
web应用程序开发第11章_第4页
第4页 / 共86页
web应用程序开发第11章_第5页
第5页 / 共86页
点击查看更多>>
资源描述

《web应用程序开发第11章》由会员分享,可在线阅读,更多相关《web应用程序开发第11章(86页珍藏版)》请在金锄头文库上搜索。

1、,Web应用程序开发教程 ASP.NET+SQL Server,授课教师: 职务:,第11章 常用ASP.NET应用实例,课程描述 为了便于读者学习和理解本书前面的内容,本章将介绍几个常用的ASP实例。这些实例都是以ASP.NET + SQL Server为基础设计开发的,具体较高的实用价值。 本章包括以下实例: 用户登录和身份认证。 网络留言板。 文件上传。 发送电子邮件。 实现图文验证。,本章知识点,实现用户登录和身份认证 上传文件 发送电子邮件 实现图文验证功能,11.1 实现用户登录和身份认证,登录控件综述 Membership类 保存自定义用户信息的数据库结构设计 设计数据库访问类

2、使用Login控件设计登录用户页面 配置Web.config中的安全属性 在母版页中使用Login控件 使用LoginStatus控件和LoginName控件 注册新用户 使用ChangePassword控件修改用户密码 使用PasswordRecovery控件找回密码 使用LoginView控件为不同用户显示不同的内容,11.1.1 登录控件综述,两种工作模式,一种是与Membership类相结合的自动验证用户凭据和管理用户设置的模式; 另一种是用户手动创建用户表、通过编程来实现自定义的验证用户凭据和管理用户设置的模式。,11.1.2 Membership类,Membership类提供的功能

3、可用于: 创建新用户。 将成员资格信息(用户名、密码、电子邮件地址及支持数据)存储在SQL Server或其他类似的数据存储区。 对访问网站的用户进行身份验证。可以编程方式对用户进行身份验证,也可以使用Login控件创建一个只需很少代码或无需代码的完整的身份验证系统。 管理密码,包括创建、更改、检索和重置密码等。可以选择要求一个密码提示问题及其答案来对忘记密码的用户的密码重置和检索请求进行身份验证。,配置MemberShip,配置工具是保存在C:WINDOWSMicrosoft.NETFrameworkv2.0.50727目录下的aspnet_regsql.exe。目录中2.0.50727是A

4、SP.NET的版本号,不同计算机上对应的版本号可能会存在差异。,配置MemberShip,MemberShip新增的表和存储过程,对Web.config进行配置,首先将身份验证方式修改为Forms(默认为Windows),代码如下: ,对Web.config进行配置,在system.web节点下添加membership节点,代码如下: ,Membership节点的属性说明,11.1.3 保存自定义用户信息的数据库结构设计,CREATE DATABASE UserMan GO,创建表Users的脚本文件,USE UserMan GO CREATE TABLE Users ( UserId Int

5、 Primary Key IDENTITY, UserName Varchar(50) NOT NULL, UserPwd Varchar(50) NOT NULL, Email Varchar(50), Question Varchar(500), Answer Varchar(500) ) GO INSERT INTO Users (UserName, UserPwd, Email, Question, Answer) VALUES(Admin, Admin, , , ) GO,11.1.4 设计数据库访问类,1Base类访问SQL Server数据库的基库,用来连接和操作数据库。 2cs

6、_Users类用来管理表Users的数据库操作。,1Base类,Base类访问SQL Server数据库的基库,用来连接和操作数据库,2cs_Users类,cs_Users类是类Base的派生类,用来管理表Users的数据库操作,11.1.5 使用Login控件设计登录用户页面,ASP.NET提供了专门进行用户登录的服务器控件Login。在网页的设计页面中展开左侧的工具箱,拖动Login控件到网页中,可以向网页中添加Login控件。,套用格式,选中Login控件,在其右上角会出现一个小图标 ,单击此图标可以弹出“Login任务”浮动窗口。单击“自动套用格式”超链接,打开“自动套用格式”对话框。

7、,Login控件的重要属性,Login控件的重要事件,登录实例,本节将设计一个登录页面Login.aspx,在网页中添加一个Login控件。,Login.aspx的设计界面,Login1_Authenticate方法,如果自己编写程序处理用户的登录请求,则在Login1_Authenticate方法中添加代码,在登录时进行身份验证,代码如下: protected void Login1_Authenticate(object sender, AuthenticateEventArgs e) cs_Users user = new cs_Users(); if (user.Validate(Lo

8、gin1.UserName, Login1.Password) e.Authenticated = true; else e.Authenticated = false; ,11.1.6 配置Web.config中的安全属性,ASP.NET允许在配置文件Web.config中使用authentication元素对安全属性进行配置,代码如下: ,11.1.6 配置Web.config中的安全属性,11.1.6 配置Web.config中的安全属性,在Web应用程序中创建两个目录,一个目录下的网页允许匿名访问,另一个目录下的网页必须要经过身份验证才能访问。 1创建目录 2创建和配置根目录下的Web

9、.config 3创建和设计登录页面 4创建和配置Users目录下的Web.config 5在Anonymous目录下创建网页 6在Users目录下创建网页 7设计主页的内容,1创建目录,在解决方案管理器中创建两个目录,即Anonymous和Users。Anonymous目录下的网页允许匿名访问,而Users目录下的网页由需要经过身份验证才能访问。,2创建和配置根目录下的Web.config,在Web应用程序的根目录下创建Web.config,其中与身份验证相关的代码如下: ,3创建和设计登录页面,指定用户登录页面为Login.aspx,它的实现方法在11.1.5小节中已经做了介绍。,4创建和

10、配置Users目录下的Web.config,在Users目录下创建Web.config,其内容如下: “ASP.NET 配置” 选项。 设置和注释的完整列表在 ments 中,该文件通常位于 WindowsMicrosoft.NETFrameworkv2.0.xxxxxConfig 中 ,5在Anonymous目录下创建网页,在Anonymous目录下创建一个Web窗体Page2.aspx,其主要代码如下: 此页允许匿名访问。 ,6在Users目录下创建网页,在Users目录下创建一个Web窗体Page1.aspx,其主要代码如下: 此页需要登录才能访问。 Page2.aspx的Form_Lo

11、ad方法的代码如下: protected void Page_Load(object sender, EventArgs e) Response.Write(HttpContext.Current.User.Identity.Name + “,欢迎光临!“); ,7设计主页的内容,在Default.aspx中添加两个超链接,分别用于访问Page1.aspx和Page2.aspx,主要代码如下: 这是用户登录演示程序的首页 访问开放访问网页 访问会员专用网页 ,Defaults.aspx的界面,11.1.7 在母版页中使用Login控件,母版页(Master Page)定义了网页的框架。一个We

12、b应用程序的大多数页面的框架都是雷同的,例如上面是用户登录表单和导航条,下面是版权信息、联系方式等内容。把这个框架单独拿出来制作成母版页,然后将母版页包含在其他页面中,这样就不需要在每个页面上重复设计相同的内容了。而且,如果需要修改母版页中的内容时,也不需要在每个网页上都做同样的修改操作了。 1页面级 2应用程序级 3目录级,实例,1创建目录MasterPage 2设计母版页Login.master,实例,添加用户身份认证功能 protected void Login1_Authenticate(object sender, AuthenticateEventArgs e) cs_Users

13、user = new cs_Users(); if (user.Validate(Login1.UserName, Login1.Password) e.Authenticated = true; else e.Authenticated = false; ,实例,3创建和设计登录页面 在MasterPage目录下创建Web窗体UseMasterPage.aspx,代码如下: 欢迎光临本网站! 下面是网站的正文。 ,实例,11.1.8 使用LoginStatus控件和LoginName控件,LoginStatus控件可以根据用户的登录情况在页面中显示登录或注销超链接,而使用LoginName控

14、件则可以显示已经登录的用户名。这两个控件相结合就可以在用户登录时显示欢迎语和注销超链接,而在用户未登录时显示登录超链接。,LoginStatus控件的重要属性和事件,修改Web.config,实例,1创建Web窗体LoginStatus.aspx 2添加LoginStatus控件和LoginName控件 在LoginStatus.aspx中添加LoginStatus控件和LoginName控件,代码如下: 欢迎光临! ,实例,3在首页Default.aspx中添加到LoginStatus.aspx的超链接 使用LoginStatus控件,11.1.9 注册新用户,1创建和定义CreateUse

15、rWizard控件,11.1.9 注册新用户,CreateUserWizard控件的基本定义代码如下: ,自动套用CreateUserWizard的格式,CreateUserWizard控件的重要属性1,CreateUserWizard控件的重要属性2,CreateUserWizard控件的重要属性3,2保存新用户数据,在主页Default.aspx中添加到注册新用户网页的超链接,代码如下: 注册新用户,保存的数据,自定义保存用户数据,CreateUserWizard1_CreatedUser方法中将CreateUserWizard1控件中的数据保存到表Users中,代码如下: protect

16、ed void CreateUserWizard1_CreatedUser(object sender, EventArgs e) cs_Users userinfo = new cs_Users(); userinfo.UserName = CreateUserWizard1.UserName; userinfo.UserPwd = CreateUserWizard1.Password; userinfo.Email = CreateUserWizard1.Email; userinfo.Question = CreateUserWizard1.Question; userinfo.Answer = CreateUserWizard1.Answer; userinfo.Insert(); ,11.1.10 使用ChangePassword控件修改用户密码,ChangeP

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号