用户登陆问题,session和application ? 当一个用户在一点上登陆以后,第二个用户使用相同的用户信息登陆,以前的用户不能再操作(相当于注销),这样的操作可以实现吗? 我用session和application 考虑了很久,没有想出来,特来请教! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 例如一个用户名为:test登陆成功后设:Application("User_" + test) = Request.UserHostAddress;然后在每个页面检查这个值是否对应,如不能对应使其登陆失效 用SESSION不能实现。用application也很难实现。 string test = "username";Application["User_" + test] = Request.UserHostAddress;if(Application["User_" + test] != Request.UserHostAddress) Session["login"] = null; to: moodboy1982(好好学习,天天向上) 有没有能具体实现的办法 to: hzw66(超越理想) 你把session清了,你自己就不能登陆了啊!我也是这样的,开始还以为很简单,不是别人清除你的session,是自己清除啊!好象有矛盾,可能用其他方法解决吧! 没发现我的方法有什么行不通?string test = "username";private void Page_Load(object sender, System.EventArgs e){ if(Application["User_" + test] == null || Application["User_" + test].ToString() != Request.UserHostAddress) Session["login"] = null; else Response.Write(Session["login"].ToString() + "已登录<br>");}private void Button1_Click(object sender, System.EventArgs e){ Session["login"] = test; Application["User_" + test] = Request.UserHostAddress;} to: hzw66(超越理想) 好象行啊!我试试啊!谢谢! 判斷一下當前User是否已在Session中存在來實現 把当前登陆的所有用户存储起来(可以放哈希表中、静态datatable、数据表、单独的xml中,随你选一种)登陆的时候把用户存入(可以用登陆的当前时间为第一标识),注销时再删除下面是实现你说的功能的做法在登陆时先检索一下在线用户中有没有,没有则正常登陆,有则把原来的删除,再把目前的加进去,当然验证的时候也得是判断当前用户是否存在于在线列表中 当然要建一张用户在线表,来判定.T_SysUserOnLine to:cncxz(虫虫) 怎么让原来的用户不能操作,而现在的用户可以操作呢? 1.在用户登录的时候,把当前用户号及他的sessionid登记在表里,标志为活动2.当另外一个人以相同的号登录的时候,搜索当前有无相同用户号在活动,如果没有,则建立自己的号,如果有,则将该号标志为不可用,同时创建自己的记录。3.在用户需要进行操作或权限判断的时候,每次均到表中查询属于自己的登录记录是否已经被置为不可用,如果是,则不允许操作,并且清空他的SESSION信息。 当然,你可以把表创建在cache里面,并且在用户的session_end事件 里面,清除该用户的cache里面的记录 “List实体集”筛选数据 怎么用Access+asp.net2.0构建一个多图新闻表 用正则表达式怎么去(如: <v:shadow color="gray [2]"/>)这样的标签呢 请问以下代码错误在哪 谢谢谢了 数据绑定问题 Gridview显示数据,如何在数据库中数据变化时自动刷新该控? 在做一个考试系统,或者说是调 查 ,在家指导数据结构。 ASP.NET如何用SmtpMail发送MIME邮件? GridView自定义分页——菜鸟求助 关于浏览器关闭事件 求判断数据库中是否存在符合条件纪录的一句话!! 求教一个简单的问题,在线散分
登陆成功后设:
Application("User_" + test) = Request.UserHostAddress;
然后在每个页面检查这个值是否对应,如不能对应使其登陆失效
用application也很难实现。
Application["User_" + test] = Request.UserHostAddress;if(Application["User_" + test] != Request.UserHostAddress)
Session["login"] = null;
我也是这样的,开始还以为很简单,不是别人清除你的session,是自己清除啊!好象有矛盾,可能用其他方法解决吧!
string test = "username";
private void Page_Load(object sender, System.EventArgs e)
{
if(Application["User_" + test] == null || Application["User_" + test].ToString() != Request.UserHostAddress)
Session["login"] = null;
else
Response.Write(Session["login"].ToString() + "已登录<br>");
}
private void Button1_Click(object sender, System.EventArgs e)
{
Session["login"] = test;
Application["User_" + test] = Request.UserHostAddress;
}
怎么让原来的用户不能操作,而现在的用户可以操作呢?
2.当另外一个人以相同的号登录的时候,搜索当前有无相同用户号在活动,如果没有,则建立自己的号,如果有,则将该号标志为不可用,同时创建自己的记录。
3.在用户需要进行操作或权限判断的时候,每次均到表中查询属于自己的登录记录是否已经被置为不可用,如果是,则不允许操作,并且清空他的SESSION信息。