日期:2014-05-19  浏览次数:20399 次

如何根据access数据库表里的数据,对网站登录者进行验证?还有验证控件的问题。
我是个初学者,网上查到一种验证登录方式,
在web.config文件中
<authentication   mode= "Forms ">
<forms   name= ".Ch09Login "   loginUrl= "login.aspx "   protection= "All "   timeout= "30 "   >
<credentials   passwordFormat= "Clear ">
                      <user   name= "syr "   password= "syr "   />
                      <user   name= "ssyyrr "   password= "ssyyrr "   />
                      <user   name= "ht "   password= "ht "   />
                  </credentials>
            </forms>
  </authentication>

然后用来 <Asp:TextBox....       和 <Asp:RequiredFieldValidator...进行验证的。
我access里有用户表,表格含用户名、密码、权限三个主要的字段。
怎么根据表格里的进行验证?用的是vs.net2005。
还有几个验证控件,我就知道这个requirefieldvalidator,其他的几个都是干嘛的?能不能解释一下。



------解决方案--------------------
找本书看看吧
------解决方案--------------------
.NET 中验证控件的使用
下面的所有控件都用到errormassage(出错时显示信息)和 Display [Dynamic(错误动态显示),Static(错误静态显示)]
使用时要根据具体情况设置Display,防止对网页外观产生影响。
1、requiredfieldvalidator 限制空字段 ; 要点 Controltovalidate属性 用来绑定控制限制哪个控件。
2、comparevalidator 比较2个字段控件,常有以下三种用法:
(1):和固定值比较 ,方法有一些常用的算术运算,如:等于,大于.等要点,ControlToValidate属性 用来绑定控制限制哪个控件;operator 属性设顶算术运算方法,type 属性设置数据类型,valuetocompare 属性必须填写被比较项的值。
(2):用于检查数据类型,检查输入的值是否为规定的数据类型;要点 :ControltoValidate 属性 同上,operator 属性此时选择 DateTypeCheck,type 属性选择相应的数据类型即可,其他的就不用管了
(3):用于检验2次输入的值是否一致,如:注册时2次密码输入是否相同。要点 :Controltovalidate 属性同上,此时controltocopare 必须选择另外一个控件,这样就好2个进行比较了 ,operator 属性此时选择比较运算方法。
3、RangeValidator 检查指定范围
ControlToValidate属性 用来绑定控制限制哪个控件,type 属性设置数据类型
minimumvalue ;maximumvalue 分别设置最小值和最大值
4、RegularExpressionValidator 使用表达式检查值
对输入的字符串进行检查,ControlToValidate属性 用来绑定控制限制哪个控件,
ValidationExpression 属性输入验证表达式。
5 CustomValidator 通过客户端或者服务器端函数检查值(自定义验证,如用户注册时检查用户名是否已经被注册等):
ControlToValidate属性 同上,其 ServerValidate 事件用来编写验证程序;
如:用于验证用户是否存在,如果存在则显示错误信息;args.IsValid :取出的值,args.IsValid 是否通过。
protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
{
string username = args.Value;
SqlConnection con = new SqlConnection( "server=;database=user;uid=bb;pswd=dd; ");
con.open;
SqlCommand cmd = new sqlcommand( "select *from user where name= " + username, con);
int a = Convert.ToInt32(cmd.ExecuteScalar());
if (a > 0)
args.IsValid = false;
else
args.IsValid = true;
}
6 ValidatorSummary 在页面中列出所有控件的错误。(验证汇总)
把一个页面中验证控件的错误信息统一显示在一个地方(错误集中显示)
附:page.isvalid 判断整个页面的验证是否通过(有一个未通过就为false)
如果通过再提交服务器(主要基于服务器端验证)
由于浏览器版本的不同,有的客户端(低版本)无法验证,从而产生错误,我们可以禁用客户端验证,如下
%@Page ClinetTarget= "DownLevel " %
这样所有验证都在服务器端。一定要判断 page.isvalid 是否有效。