asp.net 判断重复登录
可是还能登录进去,是不是因为打开一个新窗口就会重新创建一个新的Session啊”
确实是这样的。
网站都是B/S结构的。就是浏览器服务器模式。
当你打开一个浏览器登录到网站的时候。服务器会给你一个session这个session的id是唯一。也就是说别人打开一个同样网址的网页时,他的session和你的session是不同的对象。
当你在打开一个浏览器的时候也是不一样的。他针对的是浏览器而不是ip地址。
判断是否已经登录。可以使用application保存用户状态,但是会占用内存。建议使用数据库来保存。
在数据库中建一张表。保存最近一次登录时session的id 和他是什么时候登录的。
当管理员想查他现在是否在线的时候,查处他session的id 然后看看这个session现在是否已经被回收,也就是是否为null。 因为当用户超过规定时间没有提交请求的时候,系统就会回收这个session(一般默认好像是30分钟左右)。所以如果session为空就说明不在线。如果不为空那么再判断一下你保存在这个session中的用户是否与用户帐号相符。如果也相符就证明。这个用户半个小时前还再线。如果没有特殊要求,就可以认为用户现在在线。
再用登录时间和现在的时间做一下差。就能得到他在线多长时间了。
问题是 如果不为空那么再判断一下你保存在这个session中的用户是否与用户帐号相符。如果也相符就证明???? 这个是怎么判断,不明白,求指教
确实是这样的。
网站都是B/S结构的。就是浏览器服务器模式。
当你打开一个浏览器登录到网站的时候。服务器会给你一个session这个session的id是唯一。也就是说别人打开一个同样网址的网页时,他的session和你的session是不同的对象。
当你在打开一个浏览器的时候也是不一样的。他针对的是浏览器而不是ip地址。
判断是否已经登录。可以使用application保存用户状态,但是会占用内存。建议使用数据库来保存。
在数据库中建一张表。保存最近一次登录时session的id 和他是什么时候登录的。
当管理员想查他现在是否在线的时候,查处他session的id 然后看看这个session现在是否已经被回收,也就是是否为null。 因为当用户超过规定时间没有提交请求的时候,系统就会回收这个session(一般默认好像是30分钟左右)。所以如果session为空就说明不在线。如果不为空那么再判断一下你保存在这个session中的用户是否与用户帐号相符。如果也相符就证明。这个用户半个小时前还再线。如果没有特殊要求,就可以认为用户现在在线。
再用登录时间和现在的时间做一下差。就能得到他在线多长时间了。
问题是 如果不为空那么再判断一下你保存在这个session中的用户是否与用户帐号相符。如果也相符就证明???? 这个是怎么判断,不明白,求指教
...全文
相关推荐
注册登录ASP.NET
- 对敏感操作进行防止重复提交的处理,避免恶意注册或登录尝试。通过以上步骤,初学者可以构建一个基本的注册登录系统。
基于ASP.NET的网页视频播放(内含数据库、图片及视频文件)
本文介绍了ASP.NET Web Forms中实现的简单图片上传和登录功能。代码包括文件类型校验、重复文件检查、服务器保存及预览展示等功能。同时涉及用户登录验证逻辑,通过SQL查询判断用户名和密码是否
网页开发ASP.net 的ppt
Page.IsPostBack`条件判断,可以确保只有在页面首次加载时执行特定代码,避免在回发时重复执行。
ASP.NET的网站新闻管理系统设计与实现
此外,ASP.NET采用断开连接的数据处理方式,提高了效率。系统功能设计包括用户登录、权限判断、新闻的发布、编辑、删除等功能。
ASP.net中的权限控制
**验证用户是否已登录**: 通过检查Session["UserID"]是否为空来判断用户是否已经登录。


