设为首页
收藏本站
开启辅助访问
切换到窄版
登录
立即注册
中问网首页
我的收藏
站长博客
搜索
搜索
本版
帖子
用户
第一问答网
»
论坛
›
中问网
›
问答
›
我是新手,请帮我看看这个错在哪了?
1
2
/ 2 页
下一页
返回列表
发新帖
我是新手,请帮我看看这个错在哪了?
[复制链接]
11
|
10
|
2021-1-27 07:20:44
|
显示全部楼层
|
阅读模式
以下这个代码,登陆错误会提示n次,如果输入正确,页面不跳转,请大神帮帮我。
protectedvoiddlbutton_Click(objectsender,EventArgse)
{
stringlianjie=ConfigurationManager.ConnectionStrings["lianjieshujuku"].ConnectionString;
SqlConnectionconn=newSqlConnection(lianjie);
conn.Open();
SqlCommandcmd=newSqlCommand();
cmd.Connection=conn;
cmd.CommandText="select*fromuserinfo";
SqlDataReaderdr=cmd.ExecuteReader();
while(dr.Read())
{
if(tname.Text==dr["姓名"].ToString()&&tmima.Text==dr["密码"].ToString())
{
Session["username"]=tname.Text;
Session["zhiwu"]=dr["职务"].ToString();
Response.Redirect("main.aspx");
break;
}
else
{
Response.Write("");
continue;
}
}
if(conn.State==ConnectionState.Open)
{
conn.Close;
}
}
分 -->
回复
使用道具
举报
千问
|
2021-1-27 07:20:44
|
显示全部楼层
while循环当然会提示N次
你在验证成功的逻辑里没有做跳转
代码你写出来知道什么意思me?
回复
使用道具
举报
千问
|
2021-1-27 07:20:44
|
显示全部楼层
感觉逻辑有点问题,为什么要去所有数据呢?取满足条件的那一条不就行了?
SELECT*FROMUSERINFOWHEREUSERNAME='ADMIN'ANDPASSWORD=''XXXXXXX'
回复
使用道具
举报
千问
|
2021-1-27 07:20:44
|
显示全部楼层
按照2楼说的即可,但是按照你的做法,逻辑应该这样:
while(dr.Read())
{
Session["username"]=“”
if(tname.Text==dr["姓名"].ToString()&&tmima.Text==dr["密码"].ToString())
{
Session["username"]=tname.Text;
Session["zhiwu"]=dr["职务"].ToString();
Response.Redirect("main.aspx");
break;
}
}
If(Session["username"]=="")
{
Response.Write("");
}
回复
使用道具
举报
千问
|
2021-1-27 07:20:44
|
显示全部楼层
登陆要把所有的用户信息都都读取出来进行比较,这什么鬼?
回复
使用道具
举报
千问
|
2021-1-27 07:20:44
|
显示全部楼层
楼上说的对的
只要取一条符合记录就可以了
有符合记录就跳转
如果没有符合记录就提示错误
回复
使用道具
举报
千问
|
2021-1-27 07:20:44
|
显示全部楼层
cmd.CommandText="select*fromuserinfowhereusername="+tname.Text+"password="+tmima.Text;
这样不是会更快吗,为啥要全部循环呢
回复
使用道具
举报
千问
|
2021-1-27 07:20:44
|
显示全部楼层
谢谢大家我明白了,没错不应该全部读出来的。
回复
使用道具
举报
千问
|
2021-1-27 07:20:44
|
显示全部楼层
谢谢大家我明白了,没错不应该全部读出来的。
回复
使用道具
举报
千问
|
2021-1-27 07:20:44
|
显示全部楼层
谢谢大家我明白了,没错不应该全部读出来的。
回复
使用道具
举报
1
2
/ 2 页
下一页
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
千问
主题
0
回帖
4882万
积分
论坛元老
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
积分
48824836
加好友
发消息
回复楼主
返回列表
问答
热门排行