這似乎是一個非常非常基本的問題來解決,但我一直無法。上次我使用laravel和8個月前一樣,並且有些事情現在無法用這個基本的Login - Auth的東西運行。Laravel 5.2 - 登錄和用戶會話
我使用laravel 5.2,這裏是我的登錄名:
ROUTE:
Route::post('login', [
'as' => 'post_login',
'uses' => 'Auth\[email protected]'
]);
驗證\ AuthController.php:
public function login(Request $request)
{
if(Auth::attempt([
'email' => $request->get('email'),
'password' => $request->get('password'),
'active' => 1
]))
{
$user = Auth::user();
var_dump($user);
}
else
{
return 'Could not log in';
}
}
當我登錄與一個註冊用戶,它顯示我的用戶正確,現在everyhting進行完美。
但問題是,在主菜單中,我看不到用戶名而不是「登錄」 - 「註冊」按鈕。即使我點擊其中一個按鈕,也沒有任何反應,視圖不會改變,並且什麼也不做。
我的主菜單標記:
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<!-- Collapsed Hamburger -->
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#app-navbar-collapse">
<span class="sr-only">Toggle Navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<!-- Branding Image -->
<a class="navbar-brand" href="{{ url('/') }}">
Fotopredio
</a>
</div>
<div class="collapse navbar-collapse" id="app-navbar-collapse">
<!-- Left Side Of Navbar -->
<ul class="nav navbar-nav">
<li><a href="{{ url('/home') }}">Home</a></li>
</ul>
<!-- Right Side Of Navbar -->
<ul class="nav navbar-nav navbar-right">
<!-- Authentication Links -->
@if (Auth::guest())
<li><a href="{{ route('login') }}">Login</a></li>
<li><a href="{{ route('registration') }}">Registro</a></li>
@else
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
{{ Auth::user()->email }} <span class="caret"></span>
</a>
<ul class="dropdown-menu" role="menu">
<li><a href="{{ url('/logout') }}"><i class="fa fa-btn fa-sign-out"></i>Logout</a></li>
</ul>
</li>
@endif
</ul>
</div>
</div>
</nav>
你可以看到@if(AUTH ::客())...它不工作,甚至當我登錄,我可以看到登錄和註冊按鈕,當我點擊它們時,沒有任何反應。我甚至無法註銷。
編輯
我有這個標記在我的歡迎頁面,用戶應該看到它在登錄後的頁面。
@extends('layouts.app')
@section('title', 'Home')
@section('body')
<?php
if (Auth::check()) {
echo "Loged In";
} else {
echo "not loged in";
}
?>
<div class="container">
<div class="row">
<div class="col-md-10 col-md-offset-1">
<div class="panel panel-default">
<div class="panel-heading">Welcome</div>
<div class="panel-body">
Your Application's Landing Page.
</div>
</div>
</div>
</div>
</div>
@endsection
即使以後我登錄,它顯示NOT LOGED IN
嘗試添加ELSEIF:後(認證用戶()) if(Auth :: guest()) – Niall
我要更新我的問題,以便您可以看到更多實際發生的事情 –
@Niall正如您所看到的一直是POST方法(: –