【发布时间】:2016-08-24 02:01:02
【问题描述】:
我正在使用 Laravel 5,我想对我的表单使用输入验证。但我的验证不起作用。你知道为什么吗?
这是视图:
<div class="form-group"><br>
<label for="jenis_surat" class="control-label col-sm-2">Jenis Surat</label>
<div class="col-sm-7">
<script type="text/javascript">
@if($errors->any())
<div class="alert alert-danger">
@foreach($errors->all() as $error)
<p>{{ $error }}</p>
@endforeach
</div>
@endif
</script>
<input class="form-control" type="text" name="jenis_surat" id="jenis_surat">
</div>
<div class="col-md-1">
<input class="form-control" type="hidden" name="_token" value="{{ Session::token() }}">
<a class="btn btn-success" data-toggle="modal" data-target="#konfirmasi_submit_jenis_surat">Submit</a>
</div>
</div>
这是控制器:
public function tambahjenissurat(Request $request)
{
//input validation
$this->validate($request, [
'jenis_surat' => 'required'
]);
$jenis_surat = $request['jenis_surat'];
$jenissurat = new JenisSurat();
$jenissurat->jenis_surat = $jenis_surat;
$jenissurat->save();
return redirect()->route('jenissurat');
}
【问题讨论】:
-
在这里查看解决方案:stackoverflow.com/a/34421349/2594162
-
我不明白 Route::group(['middleware' => ['web']] 中的 "['middleware' => ['web']]", function () { // 在此处添加您的路线 });.我试图复制它,但我遇到了一个错误
-
您使用的是哪个 Laravel 版本?在 Laravel 5.2.0 到 5.2.26 中,所有的路由都应该被包裹在 'web' 中间件中。这个“网络”中间件实例化了会话。但是在 Laravel 5.2.27 中,laravel 自动添加了这个 'web' 中间件,所以不需要包装路由。
标签: php validation laravel input laravel-5