Php Laravel在表单提交前显示错误消息
在我的上一个问题中,我请求帮助,在错误填写表单后显示一条错误消息,而不是针对每个错误输入显示错误。他们很有帮助,我收到了以下代码:Php Laravel在表单提交前显示错误消息,php,laravel,error-handling,laravel-validation,Php,Laravel,Error Handling,Laravel Validation,在我的上一个问题中,我请求帮助,在错误填写表单后显示一条错误消息,而不是针对每个错误输入显示错误。他们很有帮助,我收到了以下代码: @if ($errors) <span class='help-block'> <strong>{{ "There are errors" }}</strong> </span> @end
@if ($errors)
<span class='help-block'>
<strong>{{ "There are errors" }}</strong>
</span>
@endif
@if($errors)
{{“有错误”}
@恩迪夫
第二个答案是
@if (!empty($errors))
<span class='help-block'>
<strong>{{ "Some input field is not properly filled" }}</strong>
</span>
@endif
@if(!empty($errors))
{{“某些输入字段未正确填充”}
@恩迪夫
我认为上面的内容只有在提交表单后才会显示,如果Laravel发现任何错误的话。问题是它总是显示错误消息,如以下屏幕截图所示:
有人知道解决办法吗?非常感谢。如果我理解正确,您只想在提交表单后显示成功或错误消息 如果是这种情况,则应采用以下方法: 您需要在控制器功能中添加/更改以下内容:
$request->session()->flash('success', 'Success!');
return redirect()->route("yourstuff.index");
$request->session()->flash('success', 'Success!');
return redirect()->route("yourstuff.index");
在您的blade.php中,您将返回会话消息,如下所示
@if (session('success'))
<div class="alert alert-success">
{{ session('success') }}
</div>
@endif
@if (session('error'))
<div class="alert alert-success">
{{ session('error') }}
</div>
@endif
@if (session('success'))
<div class="alert alert-success">
{{ session('success') }}
</div>
@endif
@if (session('error'))
<div class="alert alert-success">
{{ session('error') }}
</div>
@endif
@if(会话('success'))
{{session('success')}
@恩迪夫
@if(会话('error'))
{{session('error')}
@恩迪夫
因此,如果我理解正确,您希望仅在提交表单后显示成功或错误消息
如果是这种情况,则应采用以下方法:
您需要在控制器功能中添加/更改以下内容:
$request->session()->flash('success', 'Success!');
return redirect()->route("yourstuff.index");
$request->session()->flash('success', 'Success!');
return redirect()->route("yourstuff.index");
在您的blade.php中,您将返回会话消息,如下所示
@if (session('success'))
<div class="alert alert-success">
{{ session('success') }}
</div>
@endif
@if (session('error'))
<div class="alert alert-success">
{{ session('error') }}
</div>
@endif
@if (session('success'))
<div class="alert alert-success">
{{ session('success') }}
</div>
@endif
@if (session('error'))
<div class="alert alert-success">
{{ session('error') }}
</div>
@endif
@if(会话('success'))
{{session('success')}
@恩迪夫
@if(会话('error'))
{{session('error')}
@恩迪夫
$errors
始终设置变量。它是一个可能包含或不包含消息的文件
您可以这样检查:
@if ($errors->count() > 0)
<span class='help-block'>
<strong>{{ "Some input field is not properly filled" }}</strong>
</span>
@endif
@if($errors->count()>0)
{{“某些输入字段未正确填充”}
@恩迪夫
@if(!$errors->isEmpty())
也应该起作用。$errors
始终设置变量。它是一个可能包含或不包含消息的文件
您可以这样检查:
@if ($errors->count() > 0)
<span class='help-block'>
<strong>{{ "Some input field is not properly filled" }}</strong>
</span>
@endif
@if($errors->count()>0)
{{“某些输入字段未正确填充”}
@恩迪夫
@if(!$errors->isEmpty())
应该也能用。问题解决了,我收到了两个很好的答案,但我选择了更简单的一个。
为了返回单个错误,我使用了用户建议的代码:
德夫克
在您的blade.php中,您将返回会话消息,如下所示
@if (session('success'))
<div class="alert alert-success">
{{ session('success') }}
</div>
@endif
@if (session('error'))
<div class="alert alert-success">
{{ session('error') }}
</div>
@endif
@if (session('success'))
<div class="alert alert-success">
{{ session('success') }}
</div>
@endif
@if (session('error'))
<div class="alert alert-success">
{{ session('error') }}
</div>
@endif
@if(会话('success'))
{{session('success')}
@恩迪夫
@if(会话('error'))
{{session('error')}
@恩迪夫
我将在我的项目的其他部分使用你提出的代码。
谢谢 问题解决了,我收到了两个很好的答案,但我选择了更简单的一个。 为了返回单个错误,我使用了用户建议的代码: 德夫克 在您的blade.php中,您将返回会话消息,如下所示
@if (session('success'))
<div class="alert alert-success">
{{ session('success') }}
</div>
@endif
@if (session('error'))
<div class="alert alert-success">
{{ session('error') }}
</div>
@endif
@if (session('success'))
<div class="alert alert-success">
{{ session('success') }}
</div>
@endif
@if (session('error'))
<div class="alert alert-success">
{{ session('error') }}
</div>
@endif
@if(会话('success'))
{{session('success')}
@恩迪夫
@if(会话('error'))
{{session('error')}
@恩迪夫
我将在我的项目的其他部分使用你提出的代码。
谢谢 尝试用
{{$errors}}
输出错误。您可能需要执行类似于的操作!empty($errors)
,因为它可能只是一个空数组。以前尝试过,但没有任何效果。将提交的表单与处理该表单的控制器方法一起提交。如果只刷新表单所在的页面,会发生什么情况?如果错误消息没有以某种方式重新刷新到会话中,则应清除这些错误消息。因此,您希望仅显示提交正确的错误?因此,请显示控制器以{{$errors}}
输出错误。您可能需要执行类似于的操作!empty($errors)
,因为它可能只是一个空数组。以前尝试过,但没有任何效果。将提交的表单与处理该表单的控制器方法一起提交。如果只刷新表单所在的页面,会发生什么情况?如果错误消息没有以某种方式重新刷新到会话中,则应清除这些错误消息。因此,您希望仅显示提交正确的错误?因此,请显示控制器