asp.net c#的session不能多个页面传值
登陆页面的cs代码:protectedvoidButlogin_Click(objectsender,EventArgse) {&nbs...
登陆页面的cs代码:protected void Butlogin_Click(object sender, EventArgs e) { DataBase db = new DataBase(); if (db.checkuser(txtloginname.Text)==true) { User user = new User(); user.loaddata(txtloginname.Text); if (txtuserpasswords.Text == user.Password) { Session["name"] = user.UserName; Response.Redirect("goodsearch.aspx"); } else { Response.Write("<Script Language=JavaScript>alert(\"密码错误,请重新输入密码!\")</Script>"); } } else { Response.Write("<Script Language=JavaScript>alert(\"登陆名错误,请重新输入登录名!\")</Script>"); } }这里保存的session["name"]在另外的页面取用时为空,高手进来帮忙!!急~~~
展开
3个回答
展开全部
你使用Session有点问题,Session是保存在服务端的,如果多个用户同时登录系统,那么你的程序保存的session就不知道是哪一个,另外,建议不要使用你的静态类,多用户登录也会存在相同的问题,请使用如下代码:
Session[Session.SessionID+"name"]=txtloginname.Text;
取值时直接用:
string name=Session[Session.SessionID+"name"].ToString();
特别注意Session.SessionID是唯一的,这样就保证了唯一性
Session[Session.SessionID+"name"]=txtloginname.Text;
取值时直接用:
string name=Session[Session.SessionID+"name"].ToString();
特别注意Session.SessionID是唯一的,这样就保证了唯一性
展开全部
session能多个页面传值的
只要你浏览器没有关 一般session是存在的
你保存可能没有保存上去
只要你浏览器没有关 一般session是存在的
你保存可能没有保存上去
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用断点找找吧。
光看代码不知道你各个变量是干嘛的,比如:user.UserName是哪来的???
光看代码不知道你各个变量是干嘛的,比如:user.UserName是哪来的???
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询