Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Laravel 5.2验证正在工作,但$errors变量为空_Php_Validation_Laravel 5.2 - Fatal编程技术网

Php Laravel 5.2验证正在工作,但$errors变量为空

Php Laravel 5.2验证正在工作,但$errors变量为空,php,validation,laravel-5.2,Php,Validation,Laravel 5.2,我四处寻找类似的问题,尝试了所有答案。验证器检查规则并重新定向。但是$errors变量在我的视图中仍然是空的 控制器: public function postSlidesAdd(Request $request) { $validator = Validator::make($request->all(), [ 'priority' => 'required', 'text' => 'required',

我四处寻找类似的问题,尝试了所有答案。验证器检查规则并重新定向。但是$errors变量在我的视图中仍然是空的

控制器:

public function postSlidesAdd(Request $request)
    {
        $validator = Validator::make($request->all(), [
            'priority' => 'required',
            'text' => 'required',
            'image' => 'required'
        ]);

        if ($validator->fails()) {
            return redirect()->back()->withErrors($validator);
        }
        //insert to db and redirect back
    }
if ($validator->fails()) {
        dd($validator->errors());
        return back()->withErrors($validator);
    }
路线:

Route::group(['middleware' => ['web']], function () {
    Route::post('/admin/slides/add', [
        'uses' => 'SitesController@postSlidesAdd',
        'as' => 'admin.slides.add'
    ]);
});
视图:


这将转储一个数组“messages”,其中是另一个包含[input names=>error messages]的数组。我认为这是要发送到视图的数组,但它无法通过。请帮助我,我做错了什么。

您的视图文件有错误;你有一个额外的括号。尝试更改此选项:

@if(count($errors)>0))
为此:

@if(count($errors) > 0)
return back()->withErrors($validator);
另外,在控制器中,尝试更改:

return redirect()->back()->withErrors($validator);
为此:

@if(count($errors) > 0)
return back()->withErrors($validator);

app\Http\Kernel.php
move
\illumb\Session\Middleware\StartSession::class
中,从“web”
$middlewareGroups
$Middleware

我认为这是
$validator->message()
?感谢您的快速响应,但是message()方法在验证器中不存在;噢试着让它
messages()
messages方法在课堂上仍然找不到,先生。谢谢您的快速回复。我更新了它,仍然没有$errors中的数据。嗨,先生,我更新了它。还是空的。如果这有什么帮助;在我的控制器中:if($validator->fails()){dd($validator->errors());return back()->withErrors($validator);}它返回一个“messages”数组,其中是另一个带有[input names=>错误消息的数组。请尝试在视图中if语句之前运行
{dd($errors)}
,我将它放在@if(isset)中($errors)),否则该视图将不会加载。它返回ViewErrorBag{#182▼ #行李:[]}一个空的阵列您确定发生了有效的错误吗?您提交的表单字段是什么?您的控制器中打印的是什么?