登录

  1. 在登录视图页面声明一个全局变量存放layui模块,方便整个页面中调用:var layer;
  2. 加载layui模块:layui.use(‘layer’, function () { layer = layui.layer; });
  3. 开始写登录按钮的点击事件:
    3.1.获取表单数据:var 变量名= $(’#form表单ID[name=“数据自定义名”]’).val();
    3.2.数据验证:判断数据不为undefined,null……
    3.3.数据提交:
    3.3.1.开启加载层:加载层一般在网络请求前打开
    var 变量名= layer.load();
    ~ :web应用的根
    / :网站的根,转到端口
    $.post("@Url.Content("~/控制器/登录验证控制器名")",
    {
    变量名:变量名,
    变量名:变量名,
    ……
    },
    3.3.2.在网络请求的回调的最前面关闭加载层:layer.close(变量名);
    3.4.刷新验证图片点击事件
    function 点击事件名() {
    修改验证图片 img元素的src属性切换图片 t参数的作用:为了避免浏览器缓存图片
    $("#验证图片ID").prop(“src”, “@Url.Content(”~/控制器/验证码控制器名?t=")"+new Date().getTime());
    }
    4.新建一个验证码控制器,在控制器中生成验证码和验证图片
    4.1-生成长度为5的随机字符串作为验证码
    string 验证码名= ValidCodeUtils.GetRandomCode(5);
    4.2-根据生成的验证码字符串生成验证图片
    byte[] 验证图片名= ValidCodeUtils.CreateImage(验证码名);
    4.3-将生成的验证码字符串保存到Session
    Session[“验证码名”] = 验证码名;
    4.4-将验证图片返回到页面
    return File(验证图片名,“image/jpeg”);
  4. 新建一个登录验证控制器名
    准备返回的数据:ReturnJson 自定义名= new ReturnJson();
    msg.State = false;//设置默认的状态 可以省略不写:bool类型的数据 默认值就是false
    5.1-检查用户输入的验证码是否正确
    5.1.1-从session中获取出保存的验证码字符串
    string sessionValidCode = “”;
    if (Session[“验证码名”] != null)
    {
    sessionValidCode = Session[“验证码名”].ToString();
    }
    5.1.2-验证用户输入的验证码和session中的验证码是是否相同 忽略大小写
    验证码名= 验证码名== null ? “” : 验证码名.Trim();
    if (sessionValidCode.Equals(验证码名, StringComparison.InvariantCultureIgnoreCase) || 验证码名=="")
    { linq 单表查询的写法
    (from 自定义的表名 in Model对象.查询的表
    【where 自定义的表名.字段1 关系运算符 值 【&& 自定义的表名.字段2 关系运算符 值】】
    【orderby 自定义的表名.字段】
    【select 自定义的表名】
    【select new {[属性名1= ]自定义的表名.字段1,
    [属性名2= ]自定义的表名.字段2,
    [属性名3= ]自定义的表名.字段3,

    }】
    【select new 类名{ 类的属性1=自定义的表名.字段1,
    类的属性2=自定义的表名.字段2,

    }】
    ).Single();//查询单条数据,当没有数据或者有多条数据时会触发异常
    .SingleOrDefault();//查询单条数据,当没有数据返回默认值(对象的默认值为null);当有多条数据时触发异常
    .ToList();//查询多条数据并转为List
    .Count();//查询有多少条数据
    5.2-验证用户的数据
    5.2.1-对用户输入的密码进行AES加密
    string aesPassword = AESEncryptHelper.Encrypt(userPassword)
    5.3-处理记住我这个功能 使用cookie实现
    实例cookie:HttpCookie cookie = new HttpCookie(“自定义名”);
    保存数据到cookie:cookie[“自定义名”] = 自定义名;
    设置cookie的有效期(数量)天:
    cookie.Expires = DateTime.Now.AddDays(数字);
    返回json格式的数据:return Json(自定义名,JsonRequestBehavior.AllowGet);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值