Laravel에서 사용자 인증 및 확인 메시지 표시 문제
<p>Laravel에서 사용자를 인증하고 확인 메시지를 표시하는 데 문제가 있습니다. 로그인 시도 시 사용자가 올바르게 인증되지 않아 인증 오류 메시지가 표시되지 않습니다. </p>
<p>인증 및 검증을 위해 공식 Laravel 문서를 따랐지만 인공지능의 도움을 받아도 예상한 결과를 얻지 못했습니다.以下是我的一些代码 Pictures段:</p>
<pre class="brush:php;toolbar:false;">공용 함수 저장소(요청 $request)
{
$요청->검증([
'이메일' => '필수|이메일',
'비밀번호' => '필수의',
]);
$credentials = $request->only('이메일', '비밀번호');
if (auth()->attempt($credentials)) {
$user = 인증()->사용자();
$request->session()->put('사용자', $user);
return 리디렉션()->route('home');
}
던져 ValidationException::withMessages([
'이메일' => '이메일 또는 비밀번호가 잘못되었습니다.',
]);
}</pre>
<p>这是HTML代码:</p>
<pre class="brush:php;toolbar:false;"><!DOCTYPE html>
<html lang="ko">
<머리>
<메타 문자 집합="UTF-8">
로그인
</머리>
<본문>
로그인
<form action="/login" method="게시물">
@csrf
<입력 유형="이메일" 이름="이메일" 자리 표시자="이메일">
<입력 유형="비밀번호" 이름="비밀번호" 자리 표시자="비밀번호">
<입력 유형="제출" value="로그인">
</양식>
</body>
</html></pre>
<p>最后,是路由:</p>
<pre class="brush:php;toolbar:false;"><?php
IlluminateSupportFacadesRoute를 사용하세요.
AppHttpControllersUserController를 사용하세요.
AppHttpControllersHomeController를 사용하세요.
AppHttpControllersLoginController를 사용하세요.
Route::get('/users', [UserController::class, 'index'])->name('users.index');
Route::get('/users/create', [UserController::class, 'create']);
Route::post('/users', [UserController::class, 'store']);
Route::get('/users/{user}', [UserController::class, 'show']);
Route::get('/users/{user}/edit', [UserController::class, 'edit']);
Route::put('/users/{user}', [UserController::class, 'update']);
Route::delete('/users/{user}', [UserController::class, 'destroy'])->name('users.destroy');
Route::get('/home', [HomeController::class, 'index'])->name('home');
경로::get('/login', [LoginController::class, 'index'])->name('login');
경로::post('/login', [LoginController::class, 'store']);
?></pre>
<p>我尝试使用登录表单中提供的凭据对用户进行身份验证。如果凭据正确,我期期望Laravel能够正确地对用户进行身份验证.또한 <code>LoginController</code>의 <code>store()</code> 메소드에서 <code>$request->validate([...])</code>를 사용합니다. 유효성 검사 규칙이 설정됩니다. 이메일과 비밀번호 필드가 올바르게 채워지지 않으면 Laravel은 <code>login.blade.php</code> 보기에 오류 메시지를 표시할 것으로 예상됩니다. </p>
<p>올바른 자격 증명을 사용하여 로그인 양식을 제출하면 Laravel은 사용자를 올바르게 인증하지 못하고 오류 메시지를 표시하지 않고 로그인 페이지로 다시 리디렉션됩니다. 빈 필드나 잘못된 데이터가 포함된 양식을 제출하면 해당 오류 메시지도 보기에 표시되지 않습니다. 대신 양식은 피드백 없이 로그인 페이지로 다시 리디렉션됩니다. </p>
<p>뭔가 누락되었거나 잘못 구성되어 Laravel이 사용자를 제대로 인증하지 못하고 확인 메시지를 표시하지 못하는 것 같습니다. </p>
<p>이 문제를 해결하는 데 도움을 주시면 매우 감사하겠습니다. </p>