1.创建login页面。我去找的模板,模板地址:https://www.mycodes.net/192/10205.htm
在resources/views下面新建login文件夹,然后在此文件夹中新建index.blade.php文件。写入:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Bootstrap Material Admin</title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="all,follow">
<link rel="stylesheet" href="https://ajax.aspnetcdn.com/ajax/bootstrap/4.2.1/css/bootstrap.min.css">
<link rel="stylesheet" href="{{ 'Bootstrap/css/style.default.css' }}" id="theme-stylesheet">
</head>
<body>
<div class="page login-page">
<div class="container d-flex align-items-center">
<div class="form-holder has-shadow">
<div class="row">
<!-- Logo & Information Panel-->
<div class="col-lg-6">
<div class="info d-flex align-items-center">
<div class="content">
<div class="logo">
<h1>欢迎登录</h1>
</div>
<p>laravel初体验</p>
</div>
</div>
</div>
<!-- Form Panel -->
<div class="col-lg-6 bg-white">
<div class="form d-flex align-items-center">
<div class="content">
<form method="post" action="login.html" class="form-validate" id="loginFrom">
<div class="form-group">
<input id="login-email" type="text" name="email" required data-msg="请输入邮箱" placeholder="邮箱" class="input-material">
</div>
<div class="form-group">
<input id="login-password" type="password" name="passWord" required data-msg="请输入密码" placeholder="密码" class="input-material">
</div>
<input type="button" id="login" class="btn btn-primary" value="登录" >
</form>
<br />
<small>没有账号?</small><a href="register" class="signup"> 注册</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- JavaScript files-->
<script src="{{ 'Bootstrap/js/jquery.min.js' }}"></script>
<script src="{{ 'Bootstrap/js/bootstrap.min.js' }}"></script>
<script src="{{ 'layui/layui.js' }}"></script>
<script>
$(function(){
/*登录*/
$("#login").click(function(){
var email=$("#login-email").val();
var passWord=$("#login-password").val();
$.post('doLogin',{"email":email,"passWord":passWord,'_token':"{{ csrf_token() }}"},function(res){
//为避免layui与bootstrap冲突
layui.use('layer', function(){
var layer = layui.layer;
if(res.code>0){
layer.msg(res.msg,{icon:1,time:1500})
}else{
layer.msg(res.msg,{icon:2,time:1500});
}
});
})
})
})
</script>
</body>
</html>
2.建立controller模板(cmd进入laravel文件的根目录)
php artisan make:controller Login
在Login控制器中写入:
public function index(){
return view('login.index');
}
3.在routes/web.php中写入:
use App\Http\Controllers\Login;
Route::get('/login',[Login::class,'index']);
此时在浏览器的根域名后面输入/login就可以访问新建的login页面了。
4.点击提交以后需要做的工作:
4.1在routes/web.php中写入:
Route::post('/doLogin',[Login::class,'doLogin']);
4.2在Login控制器中写入:
public function doLogin(Request $request){
$email=$request->post('email');
$password=$request->post('passWord');
$model=new User();
$response=$model->doLogin($email,$password);
return $response;
}
4.3在user模板中写入:
//登录
public function doLogin($email,$password){
$result=$this->where('email',$email)->exists();//判断email在表中是否存在
if($result){
$pwd=$this->where('email',$email)->value('password');//查询出密码
if($pwd==$password){
return ['msg'=>'登录成功','code'=>1];
}else{
return ['msg'=>'密码错误','code'=>0];
}
}else{
return ['msg'=>'账号不存在','code'=>0];
}
}
然后点击登录就可以登录了。至于登录以后应该跳转的页面,写在index.blade.php的js下面就行。
至此,登录也告一段落