调用字符串上的成员函数 all()(视图:
Call to a member function all() on string (View:
我正在尝试使用 Laravel request validation method
创建一个登录页面
和凭据验证 -> 如果用户未通过身份验证,它将 return 错误 'wrong password ....'
我在两种不同的情况下看到错误:-
1-当没有填写任何东西点击登录按钮时:-
htmlspecialchars() expects parameter 1 to be string, object given (View: C:\xampp\htdocs\nfbweb\resources\views\login.blade.php)
2-填写random/wrong用户名和密码时:
ErrorException in f65ed669c524327dfe53b3286e027354370e4cf5.php line 13:
Call to a member function all() on string (View: C:\xampp\htdocs\nfbweb\resources\views\login.blade.php)
这是我的登录视图文件:-
<h1>Login Page</h1>
@if (session()->has('errors'))
<div class="alert alert-danger">
<ul>
{{session('errors')}}
</ul>
</div>
@endif
@if (count($errors) > 0)
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
<form action="{{route('dologin')}}" method="post">
{{csrf_field()}}
Username: <input type="text" name="username" autocomplete="off">
<br>
<br>
Password: <input type="password" name="password">
<br>
<button>Login</button>
</form>
这是我的登录控制器:
public function doLogin(Request $request)
{
$this->validate($request, [
'username' => 'required|max:255',
'password' => 'required',
]);
$client = new GuzzleHttp\Client(['base_uri' => 'https://domainname/api/v1/']);
try {
$response = $client->request('POST', 'login', [
'form_params' => [
'username' => $request->username,
'password' => $request->password,
],
]);
}
catch (ClientException $exception) {
return back()->with('errors', 'Invalid username and/or password');
}
}
我删除了视图文件中的身份验证错误消息
@if (session()->has('errors'))
<div class="alert alert-danger">
<ul>
{{session('errors')}}
</ul>
</div>
@endif
laravel 请求验证器工作正常。
当我删除视图文件中的验证器错误消息时,验证错误消息起作用了!
我在两条错误消息中是否有任何冲突?
我怎样才能让它们都工作
通过更改以下内容解决:-
会话('errors')到会话('error')
laravel 验证程序会话名称的名称存在冲突,我设置的会话名称 return 身份验证错误消息
我正在尝试使用 Laravel request validation method
创建一个登录页面和凭据验证 -> 如果用户未通过身份验证,它将 return 错误 'wrong password ....'
我在两种不同的情况下看到错误:-
1-当没有填写任何东西点击登录按钮时:-
htmlspecialchars() expects parameter 1 to be string, object given (View: C:\xampp\htdocs\nfbweb\resources\views\login.blade.php)
2-填写random/wrong用户名和密码时:
ErrorException in f65ed669c524327dfe53b3286e027354370e4cf5.php line 13:
Call to a member function all() on string (View: C:\xampp\htdocs\nfbweb\resources\views\login.blade.php)
这是我的登录视图文件:-
<h1>Login Page</h1>
@if (session()->has('errors'))
<div class="alert alert-danger">
<ul>
{{session('errors')}}
</ul>
</div>
@endif
@if (count($errors) > 0)
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
<form action="{{route('dologin')}}" method="post">
{{csrf_field()}}
Username: <input type="text" name="username" autocomplete="off">
<br>
<br>
Password: <input type="password" name="password">
<br>
<button>Login</button>
</form>
这是我的登录控制器:
public function doLogin(Request $request)
{
$this->validate($request, [
'username' => 'required|max:255',
'password' => 'required',
]);
$client = new GuzzleHttp\Client(['base_uri' => 'https://domainname/api/v1/']);
try {
$response = $client->request('POST', 'login', [
'form_params' => [
'username' => $request->username,
'password' => $request->password,
],
]);
}
catch (ClientException $exception) {
return back()->with('errors', 'Invalid username and/or password');
}
}
我删除了视图文件中的身份验证错误消息
@if (session()->has('errors'))
<div class="alert alert-danger">
<ul>
{{session('errors')}}
</ul>
</div>
@endif
laravel 请求验证器工作正常。
当我删除视图文件中的验证器错误消息时,验证错误消息起作用了!
我在两条错误消息中是否有任何冲突?
我怎样才能让它们都工作
通过更改以下内容解决:- 会话('errors')到会话('error')
laravel 验证程序会话名称的名称存在冲突,我设置的会话名称 return 身份验证错误消息