ホームページ  >  に質問  >  本文

Laravel 10のカスタムログイン/登録がダッシュボードページに入りません

<p>自分でログイン/登録を行う方法を学びたいので、breezパッケージを使用したくないので、独自のカスタムLaravel 10ログイン/登録を作成しようとしています。 </p> <p>しかし、ダッシュボード ページに認証できないようです。 </p> <p>ダッシュボード関数で if ステートメント <code>if(Auth::check())</code> を使用して、データベース内のユーザーを認証します。 </p> <p>しかし、ログイン ページにリダイレクトするとエラー メッセージが表示され続けるため、これはうまくいきません (<strong>これはデータベースに新しいユーザーを登録する場合にのみ発生します</strong>)。ログインしようとすると、ログイン ページにいるときにログイン関数から成功メッセージが表示されます (<strong>コードの詳細を参照</strong>)。 </p> <p><strong>AuthController (ダッシュボード): </strong></p> <pre class="brush:php;toolbar:false;">パブリック関数ダッシュボード(): ビュー { if(認証::check()) { return view('auth.dashboard'); } return view('auth.login')->with('error', 'アクセスは許可されていません'); }</pre> <p><strong>AuthController (ログイン): </strong></p> <pre class="brush:php;toolbar:false;">パブリック関数loginPost(Request $request): RedirectResponse { $request->validate([ '電子メール' => '必須'、 'パスワード' => '必須' ]); $credentials = $request->only('メールアドレス', 'パスワード'); if(Auth::attempt($credentials)) { $request->session()->regenerate(); return redirect()->intended(route('dashboard'))->with('success', 'ログインに成功しました'); } return redirect(route('login'))->with('error', '間違っています! 無効な認証情報が入力されました'); }</pre> <p><strong>web.php</strong></p> <pre class="brush:php;toolbar:false;">Route::get('/register', [AuthController::class, 'register'])->name('register'); Route::post('/register', [AuthController::class, 'registerPost'])->name('register.post'); Route::get('/login', [AuthController::class, 'login'])->name('login'); Route::post('/login', [AuthController::class, 'loginPost'])->name('login.post'); Route::get('/dashboard', [AuthController::class, 'dashboard'])->name('dashboard'); Route::post('/logout', [AuthController::class, 'logout'])->middleware('auth')->name('logout');</pre> <p>まだ解決策が見つかっていないので、どなたか教えていただければ幸いです。 </p>
P粉162773626P粉162773626433日前495

全員に返信(2)返信します

  • P粉006540600

    P粉0065406002023-09-06 12:41:06

    こんにちは、ログアウト機能はミドルウェアによって保護されています。ダッシュボード ルーティング ミドルウェアも追加する必要があります。認証ミドルウェアを必要とするルートをグループ化できます。

    リーリー

    返事
    0
  • P粉676588738

    P粉6765887382023-09-06 00:56:28

    あなたのルート

    リーリー

    あなたのコントローラー:

    リーリー

    あなたのログインブレード

    リーリー

    あなたの登録ページ

    リーリー

    これであなたの疑問はすべて解決すると思います

    返事
    0
  • キャンセル返事