学用MVC4做网站六后台管理:6.1.1管理员登录、6.1.2退出
1、管理员登录
在6.1中已添加控制器【AdministratorController】
在控制器中添加[Login()]action,用来显示登录页面
/// <summary>
/// 登录
/// </summary>
public ActionResult Login()
{
return View();
}
右键添加视图Login.cshtml
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>管理员登陆</title>
@Styles.Render("~/Css/Admin")
@Styles.Render("~/Css/Admin/Easyui")
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/Scripts/Easyui")
@Scripts.Render("~/Areas/Admin/Scripts/Administrator.js")
</head>
<body>
<div id="wrapper">
@using (Html.BeginForm())
{
@Html.ValidationSummary(true)
<div class="easyui-panel" title="请登录" style="width: 280px; height: 180px">
<dl>
<dd>
<div>
<label>用户名</label>
</div>
<div>
<input id="adminName" name="adminName" type="text" placeholder="请输入用户名" required maxlength="20" />
</div>
</dd>
<dd>
<div>
<label>密码</label>
</div>
<div>
<input id="passWord" name="passWord" type="password" placeholder="请输入密码" required maxlength="20" />
</div>
</dd>
<dd>
<div id="admin_login_msg" style="color:red;font-weight:bold"></div>
<div>
<button type="button" onclick="AdminLogin('@Url.Action("Index","Home")')">登录</button><button type="button" style="margin-left:40px" onclick="window.location.href='@Url.Action("Index", "Home", new { area = "" })'">
离开</button>
</div>
</dd>
</dl>
</div>
}
</div>
<script type="text/javascript">
var lbox = $("#wrapper");
var x = ($(window).width() - 280) / 2;
var y = ($(window).height() - 180) / 2;
lbox.css("padding-top", y).css("padding-left", x);
</script>
</body>
</html>
如图 ,在页面中居中显示一个easyui-panel用来输入用户名密码。

再在控制器中添加[Login(string adminName,string passWord)]action,用来处理管理员登录事件(返回类型JsonData)。
[HttpPost]
public JsonResult Login(string adminName,string passWord)
{
JsonData _jdata = new JsonData();
adminName = Server.HtmlEncode(adminName);
passWord = Ninesky.Common.Sha256(Server.HtmlEncode(passWord));
int _code = adminRsy.Authentication(adminName, passWord);
if (_code == 1)
{
AdministratorController.AdminName = adminName;
_jdata.Success = true;
_jdata.Msg = "登录成功!";
}
else if (_code == 0)
{
_jdata.Success = false;
_jdata.Msg = "密码错误!";
}
else if (_code == -1)
{
_jdata.Success = false;
_jdata.Msg = "管理员账号不存在!";
}
else
{
_jdata.Success = false;
_jdata.Msg = "发生未知错误,请刷新后重新登录!";
}
return Json(_jdata);
}
再在文件夹~/Areas/Admin/Scripts中添加Administrator.js文件(这个文件中写所有与管理员操作相关的js函数)。
先写一个点击登录的函数function AdminLogin(url),url是登录成功后跳转的页面。
//登录
function AdminLogin(url) {
$('form').form('submit', {
success: function (data) {
var rt = jQuery.parseJSON(data);
if (rt.Success) location.href = url;
else {
var msg = "";
if (rt.MsgLsit != undefined) {
$.each(rt.MsgLsit, function (i, val) {
msg += "<li>" + i + ":" + val + "</li>";
});
}
if (msg != "") msg = rt.Msg + "<br /> <p> 原因如下:" + "<ul>" + msg + "</ul></p>";
else msg = rt.Msg;
$.messager.alert("登录失败", msg, "error");
}
}
});
return false;
}
当点击登录按钮时调用AdminLogin('@Url.Action("Index","Home")' 登录成功则跳转到“~/areas/admin/Home”,登录失败则弹出对话框提示消息。

正确管理员账号admin,密码000000
2、管理员退出
添加[Logout()]action,设置AdminName为空,然后跳转的登录界面,很简单。
/// <summary>
/// 退出登录
/// </summary>
/// <returns></returns>
public ActionResult Logout()
{
AdministratorController.AdminName = string.Empty;
return RedirectToAction("Login","Administrator");
}
=========待续
代码见网盘或群
学用MVC4做网站六后台管理:6.1.1管理员登录、6.1.2退出的更多相关文章
- 学用MVC4做网站六后台管理:6.1.3管理员修改密码
6.1.3修改密码 需要两个action.一个是点击修改密码的链接要显示修改密码的分部视图(对话框形式):另一个是提交的处理action. 1.打开[AdministratorController]添 ...
- 学用MVC4做网站六:后台管理(续)
关于后台的说明: 后台将会用easyui + ajax模式. 这里涉及两个问题,一个是使用easyui如何在前台验证模型的问题,另一个是ajax提交后返回数据. 一.Easyui验证 前台验证采用ea ...
- 学用MVC4做网站六后台管理:6.1管理员(续)
接6.1 首先在~/Areas/Admin/Models文件夹添加管理员模型Administrator.cs using System.ComponentModel.DataAnnotations; ...
- MVC4做网站六后台管理:6.1.4管理员列表、添加及删除
一.管理员列表 1.首先[AdministratorController]中添加返回分部视图的public PartialViewResult Index() /// <summary> ...
- MVC4做网站六后台管理:6.2网站信息设置
用来实现网站标题.名称.关键字.描述.版权等信息的设置. 模型字段: 网站的设置信息前后台都要用到,所以要把模型方式Ninesky/Models文件夹中,代码如下: ///////////////// ...
- discuz管理员登录进入后台管理马上跳转到登录界面
昨天尝试了一下这个discuz论坛,感觉还可以.今天刚刚用管理员账户进入后台管理,准备改一改界面熟悉一下,过不了10秒钟.老是马上就退出来了.我想起来了,昨天是在阿里云服务器上面直接登录这个管理员账号 ...
- 慕学在线网0.4_xadmin后台管理
admin是基于Django开发的后台管理框架,方便,快捷,而且简单: 而xadmin就相当于admin的升级版,更加强大. 1.安装xadmin(源码安装方式) 教程 PS: - 卸载pip安装的x ...
- Asp.NetMVC利用LigerUI搭建一个简单的后台管理详解(函登录验证)
上一篇 Asp.Net 中Grid详解两种方法使用LigerUI加载数据库数据填充数据分页 了解了LigerUI 中Grid的基本用法 现在结合上一篇的内容做一个简单的后台管理,当然也有前台的页面 ...
- django的admin后台管理
Admin后台管理 要进入admin后台管理首先要创建管理员账户 createsuperuser 其中密码要大于8位 使用之前要到应用下的admin.py中注册要管理的模型表 from django. ...
随机推荐
- bzoj1968真·想sha法bi题
本来想打表找规律的来着,,, 线性筛吗?一边筛一边累加答案?那不就不线性了吗...1e6悬啊 而且不是质因数个数而是因数个数,统计起来应该还要用数学方法 ...好尴尬 等一下,不要求质数的话我筛个p ...
- windows下面安装Python和pip终极教程
在大二的时候接触过一段时间的Python,最近又开始玩起了这门语言.总的来说,个 人很喜欢Python的语言风格,但是这门语言对于windows并不算很友好,因为如果是初学者在windows环境下安装 ...
- eclipse常见问题
使用eclipse进入断点,当弹出"Confir Perspective Switch"视图时,选择"Yes".之后每次进入断点都会自动切换到debug视图. ...
- 非交织YUV格式转换
本文为自己写的从非交织yuv420转换出yuv444,yuv422h,yuv422v和手动裁剪422h,422v图片的代码 #include <fcntl.h> #include < ...
- VPB和OSGGIS安装
VPB和OSGGIS安装 转自:http://blog.sina.com.cn/s/blog_668aae780101k6pr.html 第一部分VPB安装 VirtualPlanetBuilder是 ...
- SQLServer触发器创建、删除、修改、查看
一: 触发器是一种特殊的存储过程﹐它不能被显式地调用﹐而是在往表中插入记录﹑更新记录或者删除记录时被自动地激活.所以触发器可以用来实现对表实施复杂的完整性约束. 二: SQL Server为每个触发器 ...
- ubuntu vps 安装 jdk
Introduction Java is a programming technology originally developed by Sun Microsystems and later acq ...
- WIM镜像添加多语言支持
起初的想法: intel 600p虽然速度一般,但pcie还是值得一试的.购买后发现原来的win7版本无法识别就找了KB2990941和KB3087873两个补丁,成功识别出了硬盘.期间通过dezor ...
- C#模拟http 发送post或get请求
/// <summary> /// 模拟HTTP提交表单并获取返回数据 /// POST /// </summary> /// <param name="Url ...
- java的英文词频算法
java实现的英文词频算法,通常是采用单词树来实现的.使用java实现词频统计,为了统计词汇出现频率,最简单的做法是再建立一个map,其中,key是单词,value代表次数.将文章从头读到尾,读到一个 ...