(4)打开标签选择器,插入ASP.NET验证服务器控件→CompareValidator控件,为文本框YHPASS添加与REPASS文本框对比验证控件,填有关信息如图6-2-4所示:

图6-2-4 CompareValidato标签编辑器
(5)插入ASP.NET验证服务器控件→Rangevalidator控件,为文本框YHQQ添加验证控件,填有关信息如图6-2-5所示:

图6-2-5 Range validator标签编辑器
(6)插入ASP.NET验证服务器控件→Regularexpressionvalidator控件,为文本框YHEMAIL添加验证控件,填各项如图6-2-6所示,其中的验证表达式为:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

图6-2-6 Regular expression validator标签编辑器
(7)插入ASP.NET验证服务器控件→Regularexpressionvalidator控件,为文本框YHINDEX添加验证控件,填写各项如图6-2-7所示,其中的验证表达式为:http://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?

图6-2-7 Regular expression validator 标签编辑器
(8)应该再一个验证控件防止用户注册的用户名重复。
①添加数据集yhinlog,设为筛选,筛选字段为YHNAME,参数变量为来之表单变量YHNAME,其设置如图6-2-8所示:

图6-2-8 插入数据集yhinlog
②插入ASP.NET验证服务器控件→CustomValidator控件,为文本框YHINDEX再添加验证控件,填写各项如图6-2-9所示,其中的客户端验证功能为:
<%# IIf(yhinlog.RecordCount>0,FALSE,TRUE) %>

图6-2-9 Custom Validator标签编辑器
(9)保存yhinlog.aspx,在IE中进行浏览,如果出现图6-2-10所示的对话框,那说明的dklog站点根目录下没有子目录aspnet_client,也是就没有验证控件必要的JS脚本库。这个在安装.NET框架的时候,安装程序已经复制在默认站点c:\ Inetpub\wwwroot的根目录下,复制c:\ Inetpub\wwwroot中的子目录aspnet_client到dkblog站点根目录下,就OK了!

图6-2-10 找不到必要JS脚本库
(1)打开yhinlog.aspx,添加【插入记录】服务器行为,表单的有关数据添加到数据表YH中,其有关设置如图6-3-1所示:

图6-3-1 添加【插入记录】服务器行为
(2)ASP.NET是不支持gb2312编码传输。切换到代码视图,找到:
<%@ Page Language="VB" ContentType="text/html" ResponseEncoding="gb2312" %>
把 ResponseEncoding="gb2312" 这句代码删掉就OK了:
<%@ Page Language="VB" ContentType="text/html"%>
(3)保存,在IE中浏览提交用户注册信息,在Access打开YH表,可以发现提交的中文信息全变成了??。那怎么办?不用急,这是由于TASP.NET不支持gb2312编码传输所致。打开yhinlog.aspx,切换到代码视图,找到第一行代码:
<%@ Page Language="VB" ContentType="text/html" ResponseEncoding="gb2312" %>
把它改为:
<%@ Page Language="VB" ContentType="text/html" %>
也就是去除ResponseEncoding="gb2312"。其他网页也按此法进行修改,防止中文提交信息出错。
