Web数据库开发教程作者宫继兵第7章数据验证控件课案.ppt
- 文档编号:1033745
- 上传时间:2022-10-15
- 格式:PPT
- 页数:48
- 大小:1.53MB
Web数据库开发教程作者宫继兵第7章数据验证控件课案.ppt
《Web数据库开发教程作者宫继兵第7章数据验证控件课案.ppt》由会员分享,可在线阅读,更多相关《Web数据库开发教程作者宫继兵第7章数据验证控件课案.ppt(48页珍藏版)》请在冰豆网上搜索。
第7章数据验证控件,本章要点及学时安排,了解什么是数据验证和数据验证的必要性了解数据验证控件的工作原理。
了解ASP.NET中提供的各类数据验证控件熟悉掌握各类数据验证控件的使用方法在学生信息管理系统中数据验证控件的应用,本章授课学时为4学时练习和上机学时为1-2学时,-本章要点,-学时安排,教学内容,ASP.NET中数据验证控件的工作原理必填验证控件的使用比较验证控件的使用范围验证控件的使用规则验证控件的使用用户验证控件的使用学生管理信息系统中验证控件的应用,7.1数据有效性验证机制简介,1.数据验证的必要性数据验证是一种限制用户输入的机制,可以确定用户输入的数据是否符合要求。
先执行数据验证比输入错误数据之后,再让数据库响应错误信息要有效率;同时也可以确保用户所输入的数据是一个有效值,而不会造成垃圾数据。
数据验证可以在服务器端和客户端进行,通常在客户端进行具有较好的效果。
在客户端输入完数据,向服务器提交之前对数据进行检测,若发现错误,则立即提示并要求改正,而且改正前不向服务器提交信息,减少网上的无效传输。
但是由于相当一部分客户端的设备功能较弱,不具备验证能力,或者恶意的用户能较容易地破坏客户端的验证脚本,想方设法绕过客户端的校验。
因此,从安全的角度出发,除非人为地取消了服务器端验证,不论客户端是否进行了验证,服务器端的验证都是不可缺少的。
7.1数据有效性验证机制简介,2.ASP.NET提供的数据验证控件传统的动态Web技术中,如果需要验证某个数据是否有效,开发人员必须动手编写一段代码来进行判断。
通常需要判断的条件很多,代码会非常冗长。
ASP.NET中提供了一系列容易使用且功能强大的验证控件,可以按预定义的标准检查用户的输入是否合法。
验证服务器控件是一个控件集合,这些控件允许验证关联的输入服务器控件,并在验证失败时显示自定义消息。
每个验证控件执行特定类型的验证。
可通过使用比较验证控件CompareValidator和范围验证控件RangeValidator分别针对某个特定值或值范围进行验证。
甚至还可通过使用用户验证控件CustomValidator定义自己的验证判据。
使用验证汇总控件ValidationSummary,还可以用于显示页上所有验证控件的结果摘要。
7.1数据有效性验证机制简介,2.ASP.NET提供的数据验证控件,7.1数据有效性验证机制简介,3.验证控件的验证机制在处理用户输入的数据时,ASP.NET页面首先将用户输入传递到一个或多个适当的验证控件。
验证控件将测试用户输入并设置表示输入是否通过测试的属性。
在调用所有验证控件之后,页上将设置一个属性(IsValid),如果任何一个控件显示验证检查失败,则整个页的属性都将设置为无效。
如果数据验证没有通过(IsValid属性为False),错误信息可由该验证控件显示在页面中,或者显示在页面上其它位置的验证汇总ValidationSummary控件中。
7.1数据有效性验证机制简介,3.验证控件的验证机制,7.1数据有效性验证机制简介,3.验证控件的验证机制,7.2必填验证(RequireFieldValidator)控件,使用RequiredFieldValidator控件可以使某个输入控件成为强制字段。
当验证执行时,如果输入控件包含的值仍然保持初始值而未更改,则该输入控件验证失败。
在默认情况下,验证控件的初始值(InitialValue属性)为空字符串(“”),这说明必须在输入控件中输入值才能通过验证。
必填验证控件的语法如下:
7.2必填验证(RequireFieldValidator)控件,有时初始值不为空字符串。
当输入控件具有默认值而且希望用户选择其他值时,这将非常有用。
例如,默认情况下,可能有一个具有选定输入的ListBox控件,其中包含用户从列表中选择项的说明。
用户必须从控件中选择一项,若不希望用户选择包含说明的项。
则可通过将该项的值指定为初始值来防止用户选择该项。
如果用户选择该项RequriedFieldValidator将显示它的错误信息。
若要指定关联输入控件的起始值,则可设置InitialValue属性。
多个验证程序可与同一个输入控件关联。
例如:
可在页面中使用一个RequiredFieldValidator验证控件确保有信息输入到控件中,同时可使用另一个RangeValidator验证控件确保输入值在指定的数据范围内。
7.2.1对用户名和密码进行验证,【例7-1】用户名和密码的验证对于大多数系统,用户登录页面都是必需的。
在此实例中,将使用必填验证控件完成用户提交的用户名和密码的验证,避免用户漏填。
详细过程可上机操作并参见教材内容。
7.2.2对下拉框进行验证,【例7-2】下拉框用户选择信息的验证表单中用于获取用户信息的控件有很多,如:
下拉框、列表框、复选框、单选框等,在这些输入框中,用户输入或选择的信息也同样需要验证。
本实例中将对表单中用户选择输入项的下拉框进行用户所选项的验证。
详细过程可上机操作并参见教材内容。
7.3比较验证(CompareValidator)控件,比较验证CompareValidator控件可以将用户输入到一个输入控件中的值同输入到另一个输入控件中的值相比较,或将该值与某个常数值相比较。
还可以使用CompareValidator控件确定输入到输入控件中的值是否可以转换为Type属性所指定的数据类型。
比较验证控件的语法如下:
7.3比较验证(CompareValidator)控件,通过设置ControlToValidate属性指定要验证的输入控件。
若要将特定的输入控件与另一个输入控件相比较,则使用要比较的控件的名称设置ControlToCompare属性。
可以将一个输入控件的值同某个常数值相比较,而不是比较两个输入控件的值。
通过设置ValueToCompare属性指定要比较的常数值。
Operator属性指定要执行的比较类型,如大于、等于等。
如果将Operator属性设置为DataTypeCheck(类型检查),CompareValidator控件将同时忽略ControlToCompare属性和ValueToCompare属性,而仅指示输入到输入控件中的值是否可以转换为Type属性所指定的数据类型。
7.3.1使用验证控件的四则运算,【例7-3】带有数据校验的四则运算在页面数据理中,加减乘除四则运算是较常用的基本运算,下面的实例中将首先实现任意输入两个整型数的四则运算。
详细过程可上机操作并参见教材内容。
7.3.2密码和确认密码的比较验证,【例7-4】密码和密码确认信息的比较验证当用户在某个网站上注册时,通常需要用户填写登录时使用的用户名和密码,由于密码框中字符使用点号或星号来表示,通常都需要用户再次确认密码,只有两个输入的密码完全相同,才能保证用户输入的密码确实是自己预期想要输入的密码。
在本实例中,使用比较验证控件来验证用户输入的密码确实是自己预期想要输入的密码。
详细过程可上机操作并参见教材内容。
7.4范围验证(RangeValidator)控件,可使用该控件检查用户的输入是否在指定的上限和下限之间。
可以检查数字对、字母对和日期对限定的范围。
范围验证控件的语法为:
7.4范围验证(RangeValidator)控件,使用ControlToValidate属性指定要验证的输入控件,MinimumValue和MaximumValue属性分别指定有效范围的最小值和最大值。
Type属性用于指定要比较的值的数据类型,有String字符串、Integer整型数、Double双精度的浮点型数、Date日期类型、Currency货币类型。
在执行任何比较之前,先将要比较的值转换为该数据类型。
注意:
如果输入控件为空,则不调用任何验证函数且验证成功。
需要使用RequiredFieldValidator必填验证控件防止用户跳过某个输入控件。
由MaximumValue最大值属性或MinimumValue最小值属性指定的值,当无法转换为由Type类型属性指定的数据类型时,RangeValidator范围验证控件将引发异常。
7.4.1控制正确数据范围,通常用户在页面上输入数据时,某些数据是有范围限定的,比如:
用户年龄、时间日期、学生成绩等,需要使用另一类验证控件范围验证RangeValidator控件来验证用户输入数据的范围是否满足,增强系统的容错性。
【例7-5】用户生日日期范围验证使用范围验证控件,对用户输入的生日日期范围进行验证,保证登录系统的用户年龄在18-80岁之间。
详细过程可上机操作并参见教材内容。
7.4.2使用区间验证控件验证学生成绩,RangeValidator范围验证控件还可完成String字符串、Integer整型数、Double双精度的浮点型数、Date日期类型、Currency货币类型数据的验证。
【例7-6】学生成绩范围验证本实例将进行学生成绩(0-100)的整型数验证,使用范围验证控件来实现学生成绩信息的范围验证,防止用户输入错误。
详细过程可上机操作并参见教材内容。
7.5规则验证控件,RegularExpressionValidator规则验证控件用于确定输入控件的值是否与某个正则表达式所定义的模式相匹配。
该验证类型允许检查可预知的字符序列,如:
社会保障号、电子邮件地址、电话号码、邮政编码等中的字符序列。
规则验证控件的语法如下:
7.5规则验证控件,客户端的正则表达式验证语法和服务器端略有不同。
在客户端,使用的是JScript正则表达式语法。
而在服务器端使用的则是Regex语法。
由于JScript正则表达式语法是Regex语法的子集,所以最好使用JScript正则表达式语法,以便在客户端和服务器端得到同样的结果。
7.5.1规则验证控件常用的属性和事件,1.规则验证控件的属性规则验证控件的属性与其他验证控件的属性相似,常用的有:
使用待验证控件ControlToValidate属性指定被验证的控件的ID属性;使用Text属性获取或指定该验证控件未通过验证时在验证控件中显示的文本,若未设定将显示错误信息ErrorMessage属性的文本;使用ErrorMessage属性指定未通过验证时显示在验证摘要控件中的文本信息;使用验证表达式ValidationExpression属性用于确定有效性的正则表达式。
7.5.1规则验证控件常用的属性和事件,2.规则验证控件的事件规则验证控件的事件主要有:
验证Validate事件,用于对关联的输入控件进行验证时触发;数据绑定DataBinding事件,在要验证控件的数据绑定表达式时触发;释放Dispoesd事件,在该验证控件已被释放后触发;页面加载Load事件,在加载页面后触发;页面卸载Unload事件,在卸载验证控件所在页面时触发。
7.5.2创建正则表达式,正则表达式(也称正规式)是计算机编译原理中,用来描述单词符号的方便工具。
正则表达式提供了功能强大、灵活而又高效的方法来处理文本。
正则表达式的全面模式匹配表示法可以快速地分析大量的文本以找到特定的字符模式;提取、编辑、替换或删除文本子字符串;将提取的字符串添加到集合以生成报告。
对于处理字符串(例如:
HTML代码、日志文件分析和HTTP标头分析)的许多应用程序而言,正则表达式是不可缺少的工具。
在RegularExpressionValidator规则验证控件中,对于页面中输入框中所能接受的文本字符串样式,都可以通过正规表达式来表示。
下面先简单介绍正规表达式的基本组成和写法。
7.5.2创建正则表达式,1.正规表达式书写形式用来定义可接收的字符用来定义必须输入的字符数|用来表示“或”()表示可以使用括号表示转义例如:
a-z匹配小写英文字母;A-Z匹配大写英文字母;a-zA-Z则匹配所有大小写英文字母;0-9匹配所有数字;.-+匹配所有句号、减号和加号;a-z指除了小写英文字母以外的所有字符;0-9指
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Web 数据库 开发 教程 作者 宫继兵第 数据 验证 控件