2016-05-24 5 views
1

認証モジュールで作業していますが、次のコードがあります。ifは、動作していないフォームフィールドをチェックし、条件がfalseになっています。Laravel:セッションと認証::試行でデータを渡す

次に、elseのメッセージも表示されません。私はエラーのためにこのコードの塊持っログインビューで

if (Auth::attempt(['email' => Input::get("email"), 'password' => Input::get("password")], true)) { 

    return redirect()->intended('dashboard'); 

} else { 
    return redirect() 
     ->back() 
     ->with('message', 'Incorrect email or password.') 
     ->with('form', 'login') 
     ->withInput(Input::except('password')); 
} 

:私はUbuntuと権限を使用しています

<div class="alert alert-danger {{{ (Session::has('message') && Session::get('form', 'login') == 'login') ? '' : 'display-hide' }}}"> 
    <button class="close" data-close="alert"></button> 
    <span> 
     {!! Session::has('message') ? Session::get('message') : 'Please correct your fields.' !!} 
    </span> 

</div> 

は以下のとおりです。

drwxrwxrwx 10 programmer programmer 4096 May 24 23:56 app 
-rwxrwxrwx 1 programmer programmer 1646 Apr 27 18:01 artisan 
drwxrwxrwx 3 programmer programmer 4096 Apr 27 18:01 bootstrap 
-rwxrwxrwx 1 programmer programmer 1351 May 25 00:20 composer.json 
-rwxrwxrwx 1 programmer programmer 124821 May 25 00:20 composer.lock 
drwxrwxrwx 2 programmer programmer 4096 May 24 23:56 config 
drwxrwxrwx 5 programmer programmer 4096 May 24 23:56 database 
-rwxrwxrwx 1 programmer programmer 503 Apr 27 18:01 gulpfile.js 
-rwxrwxrwx 1 programmer programmer 212 Apr 27 18:01 package.json 
-rwxrwxrwx 1 programmer programmer 1026 Apr 27 18:01 phpunit.xml 
drwxrwxrwx 6 programmer programmer 4096 May 24 23:57 public 
-rwxrwxrwx 1 programmer programmer 1918 Apr 27 18:01 readme.md 
drwxrwxrwx 5 programmer programmer 4096 Apr 27 18:01 resources 
-rwxrwxrwx 1 programmer programmer 567 Apr 27 18:01 server.php 
drwxrwxrwx 5 programmer programmer 4096 Apr 27 18:01 storage 
drwxrwxrwx 2 programmer programmer 4096 Apr 27 18:01 tests 
drwxrwxrwx 31 programmer programmer 4096 May 25 00:20 vendor 

ルートリスト:

+--------+----------+----------------------------+---------------------------------+-------------------------------------------------------------+-------------------------+ 
| Domain | Method | URI      | Name       | Action              | Middleware    | 
+--------+----------+----------------------------+---------------------------------+-------------------------------------------------------------+-------------------------+ 
|  | GET|HEAD |/      |         | App\Http\Controllers\[email protected]     | web,web,auth   | 
|  | GET|HEAD | dashboard     | dashboard      | App\Http\Controllers\[email protected]  | web,web,auth   | 
|  | GET|HEAD | login      |         | App\Http\Controllers\[email protected]    | web,web,guest   | 
|  | POST  | login      |         | App\Http\Controllers\[email protected]   | web,web,guest   | 
|  | GET|HEAD | logout      | logout       | App\Http\Controllers\[email protected]    | web,web,auth   | 
|  | POST  | password/reset    |         | App\Http\Controllers\Auth\[email protected]  | web,web,guest,guest  | 
|  | GET|HEAD | password/reset/{token}  |         | App\Http\Controllers\[email protected]    | web,web,guest   | 
|  | POST  | reset      |         | App\Http\Controllers\Auth\[email protected]  | web,web,guest,guest  | 
|  | GET|HEAD | users      | admin::users::manage   | App\Http\Controllers\[email protected]  | web,web,auth,role:admin | 
|  | POST  | users/edit-basic/{id}  | admin::users::     | App\Http\Controllers\[email protected]  | web,web,auth,role:admin | 
|  | GET|HEAD | users/edit-basic/{id}  | admin::users::edit_basic  | App\Http\Controllers\[email protected]   | web,web,auth,role:admin | 
|  | POST  | users/edit-historical/{id} | admin::users::     | App\Http\Controllers\[email protected] | web,web,auth,role:admin | 
|  | GET|HEAD | users/edit-historical/{id} | admin::users::edit_historical | App\Http\Controllers\[email protected]  | web,web,auth,role:admin | 
|  | POST  | users/handle    | admin::users::handle   | App\Http\Controllers\[email protected]   | web,web,auth,role:admin | 
|  | POST  | users/new     | admin::users::     | App\Http\Controllers\[email protected]   | web,web,auth,role:admin | 
|  | GET|HEAD | users/new     | admin::users::new    | App\Http\Controllers\[email protected]    | web,web,auth,role:admin | 
|  | POST  | users/validate-email/{id?} | admin::users::validate_email | App\Http\Controllers\[email protected]   | web,web,auth,role:admin | 
|  | POST  | users/validate-username | admin::users::validate_username | App\Http\Controllers\[email protected]  | web,web,auth,role:admin | 
+--------+----------+----------------------------+---------------------------------+-------------------------------------------------------------+-------------------------+ 
+0

ここで質問は何ですか? – lagbox

+0

なぜそれがうまくいかないのですか:(! – Gammer

+0

具体的にセッションなぜメッセージが表示されないのですか? – Gammer

答えて

1

これは動作しませんe auth :: attemptはbcryptを使ってパスワードをハッシュに変換し、一致するようにユーザーテーブルのハッシュを探します。

要するに、パスワードは認証のためのデータベーステーブルに保存されたハッシュでなければなりません::試みてください。

これはif()条件が失敗する理由です。

以下

はlaravel 5.2ドキュメント

laravel.com/docs/5.2/authentication#authenticating-users

試行方法であるその最初 引数としてキー/値のペアの配列を受け付けます。配列内の値は、データベーステーブル のユーザーを見つけるために使用されます。したがって、上記の例では、ユーザは というメール列の値で取得されます。ユーザーが見つかると、データベースに格納されている ハッシュされたパスワードが、 ハッシュされたパスワード値と比較され、配列を介してメソッドに渡されます。 2つのパスワードがハッシュされたパスワードが一致すると、ユーザーは の認証セッションが開始されます。

認証が成功した場合、試行メソッドはtrueを返します。 それ以外の場合は、falseが返されます。

+0

まだ動作していません...私は質問を更新しています。 – Gammer

+0

あなたは私が与えた正確なコードを試しましたか? –

+0

うん!!!!!!!!!!! – Gammer

関連する問題