永发信息网

关于C#.NET用户登录验证的详细代码

答案:5  悬赏:0  手机版
解决时间 2021-12-26 03:24
protected void btn_ok_Click(object sender, EventArgs e)
{
string conn;
string users, pwd;
users = username.Text;
pwd = userpwd.Text;
SqlConnection conn = new SqlConnection("server=localhost;database=test;uid=;pwd=;");
SqlConnection con = SqlConnection(Sql, conn);
con.Open();
SqlCommand dr = new SqlCommand("select count(*) as icount from test where username="+users+"");
}

这是我写的一部分代码,现在就是我不那个count怎么使用和怎样判断用户名和密码数据库中是否存在、对不对。代码要详细,
最佳答案
protected void btn_ok_Click(object sender, EventArgs e)
{
string conn;
string users, pwd;
users = username.Text;
pwd = userpwd.Text;
SqlConnection conn = new SqlConnection("server=localhost;database=test;uid=;pwd=;");
SqlConnection con = SqlConnection(Sql, conn);
con.Open();
SqlCommand dr = new SqlCommand("select count(*) as icount from test where username="+users+"");
SqlDataAdapter sda=new SqlDataAdapter(dr);
DataTable dt=new DataTable();
sda.Fill(dt);
con.Close();
if(dt.Rows.Count>=1)
{
Response.Redirect("跳转页面");
}
else
{
Response.Write("不存在的用户名");
}

}
全部回答
string conn,users,pwd; users=username.text; pwd = userpwd.Text; SqlConnection conn = new SqlConnection("server=localhost;database=test;uid=;pwd=;"); SqlConnection con = SqlConnection(Sql, conn); con.Open(); SqlCommand dr = new SqlCommand("select * from test where username="+users+""); SqlCommand dr1 = new SqlCommand("select * from test where username="+users+""and password="+pwd+" ); Data.SqlClient.SqlDataReader myreader = dr.ExecuteReader; Data.SqlClient.SqlDataReader myreader1 = dr1.ExecuteReader; if myreader.read() then if myreader1.read() then '登陆 else '密码错误 endif else '没有该用户 endif
select username,password from test where username="+users+" and password="+pwd+" 然后执行并查看结果行数,要是一行都没有就是密码不正确了
是这样的,count(*)是数据返回的行数,如果你输入的用户名和密码存在,则count返回的数字应该为1,如果不存在则为0(数据库中不存在该用户),所以if(count(*)!=0){则数据库存在该用户}else{用户不存在} string sql=string.format("select count(*) from test where username={0}and pwd={1}", username.Text,userpwd.Text);注:username为数据库表中用户的用户名,pwd为密码都是表中的字段名
select count(*) from test where username="'+users+'" and pwd = "'+pwd+'" 然后 cmd.Connection = conn; int flag =Convert.ToInt32(dr.ExcuteScalar()); if(flag>0) { //登陆成功逻辑 } else { //登陆失败逻辑 }
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
女频小说是什么意思,哪些类型的小说可以叫做
感觉阅读答案
硬盘有哪几种牌子
香港化妆品到底比国内的便宜多少
面试后办理入职,但毕业证被扣在公司,说以后
TOPGEAR现在的版权是不是被买了,找不到地方
一两万的二手车买什么好
下列化学反应中属于分解反应的是A.2Cu+O22CuO
淘宝卖家怎么取消七天无理由退换?
生绿豆用开水泡出来的水能不能喝?
有首歌的歌词是 喜欢你坏坏的感觉 喜欢你..
判断题从戚继光抗倭到郑成功收复台湾再到雅克
慢性自发性脾破裂一般多久出现休克
Earthquakes can be very scary(吓人的). B
谁能告诉我大话西游二以前我在一个网站上,看
推荐资讯
数学学科中有许多奇妙而有趣的现象,很多秘密
跳过开机向导的问题,有什么解决办法么
下十字头的字有哪些
怎样用广联达查询定额的工作内容
请问船员适任证书真假在网上怎么查询
单选题________isimpossible________himtoc
捷达 自动档起车是按钮按不动,不能换档
下图是人们在日常生活中常用的测量仪器,请你
我写好了一个form.jsp的代码,是让用户输入用
多选题关于机械运动和参考系,下列说法中正确
怎么控制好离合器,有没有什么窍门?
安娜贝尔与厉鬼将映哪个恐怖
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?