Laravel 5.1 프레임 워 크 폼 검증 작업 사례 상세 설명
6902 단어 Laravel5.1폼 검증
양식 을 제출 할 때 제출 한 데 이 터 를 검증 합 니 다.Laravel 은 Controller 류 에서 traint:Validates Request 를 사 용 했 습 니 다.우리 가 컨트롤 러 에서 검증 기 를 사용 하 는 것 을 편리 하 게 하 다.
다음은 검증 표 의 예 를 살 펴 보 겠 습 니 다.
준비
1.1 생 성 루트
Route::resource('/post', 'PostController');
1.2 컨트롤 러 생 성
php artisan make:controller PostController
1.3 보기 만 들 기/views 에/post/create.blade.php 파일 을 만 들 고 다음 과 같이 작성 합 니 다.
<!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">
</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"> </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"> </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>
1.4 PostController 에서 create 보 기 를 되 돌려 줍 니 다.
public function create()
{
return view('post.create');
}
2 검증 시작2.1 validate
저 희 는 store 방법 에서 폼 이 제출 한 데 이 터 를 검증 합 니 다.문법 은 다음 과 같 습 니 다.
validate()인자:
public function store(Request $request)
{
$this->validate($request, [
'title' => 'required|min:3',
'content' => 'required|min:10',
]);
echo ' ';
}
↑위의 예 에서 인증 이 통과 되면'검증 통과'가 표 시 됩 니 다.인증 이 통과 되 지 않 으 면 Laravel 은 자동 으로 폼 제출 페이지 로 이동 하여 오류 정 보 를 Session 에 플래시 저장 합 니 다.create.balde.php 파일 을 수정 하여 오류 코드 를 추가 할 수 있 습 니 다.2.2 오류 정보 표시
<!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">
</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"> </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"> </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>
3 수 동 으로 Validator 만 들 기
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 ' ';
}
Laravel 관련 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있다.본 고 는 Laravel 프레임 워 크 를 바탕 으로 하 는 PHP 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Laravel 5.1 프레임 워 크 모델 조회 역할 영역 정의 와 용법 사례 분석본 논문 의 사례 는 Laravel 5.1 프레임 워 크 모델 조회 역할 도 메 인 정의 와 용법 을 서술 했다.여러분 께 참고 하도록 공유 하 겠 습 니 다.구체 적 으로 는 다음 과 같 습 니 다. 검색 역할 영...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.