您好,登錄后才能下訂單哦!
這篇文章將為大家詳細(xì)講解有關(guān)使用Laravel5.1 框架怎么實(shí)現(xiàn)表單驗(yàn)證操作,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。
Route::resource('/post', 'PostController');
php artisan make:controller PostController
在 /views 中創(chuàng)建 /post/create.blade.php 文件,編寫(xiě)如下:
<!DOCTYPE html> <html> <head> <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" rel="external nofollow" rel="external nofollow" > </head> <body> <div class="container"> <div class="row"> <div class="col-md-8 col-md-offset-2"> <div class="panel panel-default"> <div class="panel-heading"> 創(chuàng)建文章 </div> <div class="panel-body"> <form action="{{ url("/post") }}" method="POST" class="form-horizontal"> <input type="hidden" name="_token" value="{{ csrf_token() }}"> <div class="form-group"> <label class="col-md-4 control-label">標(biāo)題</label> <div class="col-md-6"> <input type="text" class="form-control" name="title"> </div> </div> <div class="form-group"> <label class="col-md-4 control-label">內(nèi)容</label> <div class="col-md-6"> <textarea rows="10" class="form-control" name="content"></textarea> </div> </div> <div class="form-group"> <div class="col-md-6 col-md-offset-4"> <button class="btn btn-primary" type="submit">Submit</button> </div> </div> </form> </div> </div> </div> </div> </div> </body> </html>
public function create() { return view('post.create'); }
我們?cè)趕tore方法中驗(yàn)證表單提交過(guò)來(lái)的數(shù)據(jù),語(yǔ)法是這樣的:
validate() 參數(shù):
request:傳入請(qǐng)求就好。
rule:規(guī)則數(shù)組,把我們的驗(yàn)證邏輯寫(xiě)在這里面。
public function store(Request $request) { $this->validate($request, [ 'title' => 'required|min:3', 'content' => 'required|min:10', ]); echo '驗(yàn)證通過(guò)'; }
↑ 上面的例子如果驗(yàn)證通過(guò) 則顯示"驗(yàn)證通過(guò)" 如果驗(yàn)證沒(méi)有通過(guò)的話Laravel會(huì)自動(dòng)跳轉(zhuǎn)到表單提交頁(yè)面 并把錯(cuò)誤信息閃存到Session中,我們可以修改create.balde.php文件 添加顯示錯(cuò)誤代碼
<!DOCTYPE html> <html> <head> <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" rel="external nofollow" rel="external nofollow" > </head> <body> <div class="container"> <div class="row"> <div class="col-md-8 col-md-offset-2"> <div class="panel panel-default"> <div class="panel-heading"> 創(chuàng)建文章 </div> <div class="panel-body"> @if (count($errors) > 0) <div class="alert alert-danger"> <ul> @foreach ($errors->all() as $error) <li>{{ $error }}</li> @endforeach </ul> </div> @endif <form action="{{ url("/post") }}" method="POST" class="form-horizontal"> <input type="hidden" name="_token" value="{{ csrf_token() }}"> <div class="form-group"> <label class="col-md-4 control-label">標(biāo)題</label> <div class="col-md-6"> <input type="text" class="form-control" name="title"> </div> </div> <div class="form-group"> <label class="col-md-4 control-label">內(nèi)容</label> <div class="col-md-6"> <textarea rows="10" class="form-control" name="content"></textarea> </div> </div> <div class="form-group"> <div class="col-md-6 col-md-offset-4"> <button class="btn btn-primary" type="submit">Submit</button> </div> </div> </form> </div> </div> </div> </div> </div> </body> </html>
public function store(Request $request) { // $this->validate($request, [ // 'title' => 'required|min:3', // 'content' => 'required|min:10', // ]); $validator = Validator::make($request->all(), [ 'title' => 'required|min:3', 'content' => 'required|min:10', ]); if ($validator->fails()) { return redirect('post/create') ->withErrors($validator) ->withInput(); } echo '驗(yàn)證通過(guò)'; }
關(guān)于使用Laravel5.1 框架怎么實(shí)現(xiàn)表單驗(yàn)證操作就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。