做一个简单的登录功能

1.思路:获取页面数据 à 视图传递数获取到的数据到控制器
à 控制器中创建方法接收

视图传过来的数据 à 将获取到的数据跟数据库中的数据匹配,判断账号和密码是否正确à 返回数据到视图中
à 在视图中利用回调函数接收数据 à 判断是否正确登录成功 à i提示

第一步:给登录按钮一个点击事件,当点击按钮时传递数据到控制器中的对应方法里,同时也在这里使用了回调函数

$("#btnSubmit").click(function () {

var formDate = $("#fmLogin").serializeArray();//serializeArray() 方法通过序列化表单值来创建对象数组(名称和值)。返回 JSON 数据结构数据。此方法返回的是 JSON 对象而非 JSON 字符串

$.post("/Main/UserLogin", formDate, function (data) {

//处理返回的数据,根据不同的返回内容做出不同的操作和提示

if (data == “success”) {

//登录成功,跳转到主页面

//使用replace不会出现后退按钮

window.location.replace("/Main/Main");

}

else {

//引用第三方对话框。

layer.alert(data, { icon:
0, title: ‘提示’ });//0警告;1成功;2失败;3问号;4锁;5难过表情;6微笑表情

}

})

});

第二步:在控制器中创建方法去接收数据,同时也将视图传过来的数据跟数据库的数据做了对比,判断数据是否匹配

public ActionResult UserLogin(PW_User pwUser)

{

string strMsg = “fail”;//定义一个记录状态的变量

// 获取页面传递过来的数据

string strUserName = pwUser.UserName;//用户名/手机号

string strPassword = pwUser.EncryptPassword;//密码

string strrememberMe = Request[“rememberMe”];//记住密码

if (strUserName != “” && strPassword != “”)

{

try

{

//判断账号是否存在

PW_User dbUser = (from tbUser in myModel.PW_User

where tbUser.UserName ==
strUserName

select tbUser).Single();

//对页面传递过来的密码进行加密

string Password = AESEncryptHelper.Encrypt(strPassword);

if(dbUser.EncryptPassword== Password)//判断密码是否正确

{

strMsg = “success”;

}

else

{

strMsg = “密码错误!”;

}

}

catch (Exception)

{

strMsg = “当前输入的账号不存在!”;

}

}

else{

strMsg = “数据输入不完整!”;

}

return Json(strMsg, JsonRequestBehavior.AllowGet);

}

猜你喜欢

转载自blog.csdn.net/qq_44489422/article/details/90272497