user表设计
CREATE TABLE "zh_user" (
"id" int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
"is_admin" int(11) DEFAULT '0' COMMENT '是否是管理员 1是 0否',
"name" varchar(100) DEFAULT NULL COMMENT '用户名称',
"email" varchar(200) DEFAULT NULL COMMENT '邮箱',
"mobile" varchar(15) DEFAULT NULL COMMENT '手机',
"password" char(40) DEFAULT NULL COMMENT '密码',
"status" int(11) DEFAULT '1' COMMENT '状态 1启用 0禁用',
"create_time" int(10) DEFAULT NULL COMMENT '创建时间',
"update_time" int(10) DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY ("id")
);
user.php控制器的代码
<?php
namespace app\admin\controller;
use app\admin\common\controller\Base;
use app\admin\common\model\User as UserModel;
use think\facade\Request;
use think\facade\Session;
class User extends Base
{
//渲染登录界面
public function login()
{
$this->view->assign('title','管理员登录');
return $this->view->fetch('login');
}
//验证后台登录
public function checkLogin()
{
$data = Request::param();
//查询条件
$map[] = ['email','=',$data['email']];
$map[] = ['password','=',sha1($data['password'])];
$result = UserModel::where($map)->find();
if($result){
//保存到session中
Session::set('admin_id',$result['id']);
Session::set('admin_user',$result['name']);
//判断是否是超级管理员
Session::set('admin_level',$result['is_admin']);
$this->success('登录成功','admin/index/index');
}
$this->error('登录失败');
}
}
login.html前端代码
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>{$title|default="页面标题"}</title>
<link href="/zh/public/static/css/bootstrap.css" rel="stylesheet">
<script src="/zh/public/static/js/jquery.min.js"></script>
<script src="/zh/public/static/js/bootstrap.min.js"></script>
</head>
<body>
<div class="container">
<div class="row">
<!--栅格系统,12块,分成三列,没列占4块-->
<div class="col-md-4"></div>
<div class="col-md-4">
<div class="page-header text-center">
<h3>管理员登录</h3>
</div>
<form class="form-horizontal" action="{:url('user/checkLogin')}" method="post">
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">邮箱</label>
<div class="col-sm-10">
<input type="email" name="email" class="form-control" id="inputEmail3" placeholder="Email">
</div>
</div>
<div class="form-group">
<label for="inputPassword3" class="col-sm-2 control-label">密码:</label>
<div class="col-sm-10">
<input type="password" name="password" class="form-control" id="inputPassword3" placeholder="Password">
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-primary btn-block">登录</button>
</div>
</div>
</form>
</div>
<div class="col-md-4"></div>
</div>
</div>
</body>
</html>
展示结果页面