asp.net判断用户登录错误次数3次,就不能在登陆了!
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了asp.net判断用户登录错误次数3次,就不能在登陆了!相关的知识,希望对你有一定的参考价值。
if(Request.Cookies["loginnum"]!=null)if(Request.Cookies["loginnum"].value=="3")
Response.Write("<script>alert(\"密码连续错误3次,禁止登录!!!\");</script>");
return;
//判断密码是否输入正确
if(password!="密码")
//判断cookie是否存在
if(Request.Cookies["loginnum"]==null)
//写入cookie
HttpCookie logcookie= new HttpCookie("loginnum","1");
Request.Cookies["logcookie"].Expires = DateTime.Now.AddDays(1);
Response.Cookies.Add(logcookie);
else
//累加一次错误
int num = int.Parse(Request.Cookies["logcookie"].Value)+1;
Request.Cookies["logcookie"].Value = num .ToString();
else
//设置cookie过期 且清空登录错误次数
Request.Cookies["logcookie"].Value = 0;
Request.Cookies["logcookie"].Expires = DateTime.Now.AddDays(-1);
Response.Write("<script>alert(\"登录成功\");</script>");
给我分吧!呵呵
楼下的别瞎说话 怎么不行了。关键只是被人清空cookie而已。楼主又没细说具体。
照你这样说 那数据库被黑了 不一样的可以重负登录 也阻止不了。 参考技术A 楼上的方法不行吧,要是别人清空COOKIE的话又可以登录了
————————————————————————————————
用一个表来存储当天登录的ID、IP,并标志是否成功登录,如果同一个ID和IP登录失败3次就拒绝登录
绑定IP的目的是为了防止恶意登录,但也不能完全阻止,因为有的内网使用NAT转换,登录IP可能相同
——————————————————————————————————
呵呵 ,考虑程度不一样,当然你那个方法也有很多优点,看自己要求吧 参考技术B 在数据库中加入一个字段,每次登陆判断时减一次。
asp.net mvc 中怎么像webform一样自定义一个BaseController实现判断用户是不是登录 然后获取用户的权限
写一个过滤器,在需要做身份验证的action上加上过滤器就可以了
[CheckUserFilter]public ActionResult DelItem(int? id, FormCollection form)
bool result = false;
if (id != null)
int _id = id ?? 0;
result = new DbHelper().DelSysUserInfo(_id);
if (result)
return Redirect(Request.UrlReferrer.AbsoluteUri);
var ids = form["users"].Split(',');
result = new DbHelper().DelSysUserInfo(ids);
return Redirect(Request.UrlReferrer.AbsoluteUri);
public class CheckUserFilter : ActionFilterAttribute
public override void OnActionExecuting(ActionExecutingContext filterContext)
base.OnActionExecuting(filterContext);
if (filterContext.HttpContext.Session["currentUser"] != null)
return;
else if (CookieManage.GetCookie("login") != null)
.......相关操作 参考技术A 没必要非用Controller,你只要写一个公共类,
在这个类中重写OnActionExecuting方法,
然后再每个页面加载的action前加上[类名]就行了,
效果就是每次执行这个action之前就走一遍这个方法。
以上是关于asp.net判断用户登录错误次数3次,就不能在登陆了!的主要内容,如果未能解决你的问题,请参考以下文章