Laravel Validation

Laravel will always check for errors in the session data, and automatically bind them to the view if they are available.

$errors variable will always be used in all of your views on every request.

File name : index.php

Accepted
Active URL
After (Date)
Alpha
Alpha Dash
Alpha Numeric
Array
Before (Date)
Between
Boolean
Confirmed

Date
Date Format
Different
Digits
Digits Between
E-Mail
Exists (Database)
Image (File)
In
Integer
IP Address
JSON
Max
MIME Types(File)
Min
Not In
Numeric
Regular Expression
Required
Required If
Required Unless
Required With
Required With All
Required Without
Required Without All
Same
Size
String
Timezone
Unique (Database)
URL

The $errors variable will be an instance of Illuminate\Support\MessageBag. Error message can be displayed in view file

@if (count($errors) > 0)
<div class = "alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif

UserRegisterController.php

public function validateform(Request $request) {
print_r($request->all());
$this->validate($request,[
'name' => 'required|max:8|min:4',
'email' => 'required|email',
'mobile' => 'required|Numeric|max:10',
'gender' => 'required',
'hobbies' => 'required',
'message' => 'required|alphaNum|min:20'
'post' => 'required|unique:posts|max:255',
'title' => 'required|unique|max:255',
"amount" =>" required|regex:/^\d+(\.\d{1,2})?$/",
"amount" =>" required|regex:/^\d{1,13}(\.\d{1,4})?$/",
//'name' => 'required|alpha',
//'name' => 'required|alpha_spaces',
'name' => 'regex:/([A-Za-z])+/',
'email' => 'required|email',
'password' => 'required|alphaNum|max:20|min:4',
//'phone' => 'required|digits:10', // work fine
'phone' => 'required|numeric|digits:10|starts_with: 6,7,8,9'
//'phone' => 'required|numeric|between:9,11',
//'phone' => 'required|min:10|numeric',
//'phone' => 'required|regex:/(01)[0-9]{9}/',
//'phone' => 'required|regex:/^([0-9\s\-\+\(\)]*)$/|min:10' ]);
}

ContactController.php

public function contact(Request $request)
{
$rules = [
'name' => 'required',
'email' => 'required|email',
'message' => 'required|min:5',
];

$this->validate($request, $rules);

// send contact details to email address

return back()->with("status", "Your message has been received, We'll get back to you shortly.");
}

validation in inline input field

File name : index.php

<div class="form-group {{ $errors->has('name') ? 'has-error' : ''}}">
<label for="name" class="col-sm-3 control-label">Name: </label>
<div class="col-sm-6">
<input class="form-control" required="required" name="name" type="text" id="name">
{!! $errors->first('name', '<p class="help-block">:message</p>') !!}
</div>
</div>

File name : index.php

<div class="col-md-8">
<!-- <form method="post" action="{{ url('/main/checklogin') }}"> -->
<form name="frm" action="{{url('emailsend')}}" method="post">
<!-- {{ csrf_field() }} -->
@csrf
<!-- <input type = "hidden" name = "_token" value = "<?php //echo csrf_token(); ?>">-->
<div class="form-group" {{ $errors->has('name') ? 'has-error' : ''}}>
<label>Name</label>
<input type="text" class="form-control" name="name" id="name" placeholder="Enter Name">
{!! $errors->first('name', '<p class="help-block" style="color:red;">:message</p>') !!}
</div>

<div class="form-group">
<label>Email</label> <input type="text" class="form-control" name="email" id="email"
placeholder="Enter Email">

{!! $errors->first('email', '<p class="help-block" style="color:red;">:message</p>') !!}
</div>
<div class="form-group">
<label>Mobile</label> <input type="text" class="form-control" name="mobile" id="mobile"
placeholder="Enter Mobile">
{!! $errors->first('mobile', '<p class="help-block" style="color:red;">:message</p>') !!}
</div>
<div class="form-group">
<label>Gender</label>
<input type="radio" name="gender" value="male">Male
<input type="radio" name="gender" value="female">Female
</div>
<input type="checkbox" name="hobbies[]" value="Musics">Musics
<input type="checkbox" name="hobbies[]" value="cricket">cricket
<input type="checkbox" name="hobbies[]" value="NET">NET
<input type="checkbox" name="hobbies[]" value="Sweeming">Sweeming


<div class="form-group">
<label for="exampleFormControlTextarea1">Message</label>
<textarea class="form-control" name="message"
id="message" rows="3"></textarea>
</div>





<button type="submit" class="btn btn-primary">Submit</button>

</form>
</div>

Validation Form :-

<form action="{{ url('contact') }}" method="POST">

{{ csrf_field() }}

<div class="form-group{{ $errors->has('name') ? ' has-error' : '' }}">
<label for="name">Name</label>
<input type="text" name="name" class="form-control" value="{{ old('name')}}">

<small class="text-danger">{{ $errors->first('name') }}</small>
</div>

<div class="form-group{{ $errors->has('email') ? ' has-error' : '' }}">
<label for="email">Email Address</label>
<input type="email" name="email" class="form-control" value="{{ old('email')}}">

<small class="text-danger">{{ $errors->first('email') }}</small>
</div>

<div class="form-group{{ $errors->has('message') ? ' has-error' : '' }}">
<label for="message">Message</label>
<textarea name="message" class="form-control" rows="5">{{ old('message')}}</textarea>

<small class="text-danger">{{ $errors->first('message') }}</small>
</div>

<div class="form-group">
<button type="submit" class="btn btn-primary">Submit</button>
</div>

</form>

NO Space validation

File name : index.php

public function store(Request $request)
{
\Validator::extend('without_spaces', function($attr, $value){
return preg_match('/^\S*$/u', $value);
});

$request->validate([
'username' => 'required|without_spaces|unique:user_detail,username',
]);

return redirect()->back();
}

NO Space validation

File name : index.php

public function store(Request $request)
{
$request->validate([
'username' => 'required|regex:/^\S*$/u',
]);

return redirect()->back();
}

jQuery Form Validation

File name : index.php

<!DOCTYPE html>

<html>

<head>
<meta charset="utf-8">
<title>Laravel 5.8 JQuery Form Validation Example - ittutorialAdda.com</title>
<link rel="stylesheet" href="{{asset('css/app.css')}}">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.1.3/css/bootstrap.min.css" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.1.3/js/bootstrap.min.js"></script>
<script src="https://cdn.jsdelivr.net/jquery.validation/1.16.0/jquery.validate.min.js"></script>
<script src="https://cdn.jsdelivr.net/jquery.validation/1.16.0/additional-methods.min.js"></script>
<style type="text/css">
.error{
color: red;
}

</style>
</head>

<body>

<div class="container">

<h2>Laravel 5.8 JQuery Form Validation Example - itechxpert.in</h2><br/>

<form method="post" action="{{url('validation')}}" id="form">
@csrf
<div class="row">
<div class="col-md-4"></div>
<div class="form-group col-md-4">
<label for="Name">Name:</label>
<input type="text" class="form-control" name="name">
</div>
</div>



<div class="row">

<div class="col-md-4"></div>

<div class="form-group col-md-4">

<label for="Email">Email:</label>

<input type="text" class="form-control" name="email">

</div>

</div>



<div class="row">

<div class="col-md-4"></div>

<div class="form-group col-md-4">

<label for="Number">Phone:</label>

<input type="text" class="form-control" name="number">

</div>

</div>



<div class="row">

<div class="col-md-4"></div>

<div class="form-group col-md-4">

<label for="Min Length">Min Length(minium 5):</label>

<input type="text" class="form-control" name="minlength">

</div>

</div>



<div class="row">

<div class="col-md-4"></div>

<div class="form-group col-md-4">

<label for="Max Length">Max Length(maximum 8):</label>

<input type="text" class="form-control" name="maxlength">

</div>

</div>



<div class="row">

<div class="col-md-4"></div>

<div class="form-group col-md-4">

<label for="Min Value">Min Value(minium 1):</label>

<input type="text" class="form-control" name="minvalue">

</div>

</div>



<div class="row">

<div class="col-md-4"></div>

<div class="form-group col-md-4">

<label for="Max Value">Max Value(maximum value 100):</label>

<input type="text" class="form-control" name="maxvalue">

</div>

</div>



<div class="row">

<div class="col-md-4"></div>

<div class="form-group col-md-4">

<label for="Range">Range(minium 20, maximum 40):</label>

<input type="text" class="form-control" name="range">

</div>

</div>



<div class="row">

<div class="col-md-4"></div>

<div class="form-group col-md-4">

<label for="Range">URL:</label>

<input type="text" class="form-control" name="url">

</div>

</div>



<div class="row">

<div class="col-md-4"></div>

<div class="form-group col-md-4">

<input type="file" name="filename">

</div>

</div>



<div class="row">

<div class="col-md-4"></div>

<div class="form-group col-md-4" style="margin-top:60px">

<button type="submit" class="btn btn-success">Submit</button>

</div>

</div>



</form>



</div>



<script>



$(document).ready(function () {



$('#form').validate({ // initialize the plugin

rules: {

name: {

required: true

},

email: {

required: true,

email: true

},

number: {

required: true,

digits: true

},

minlength: {

required: true,

minlength: 5

},

maxlength: {

required: true,

maxlength: 8

},

minvalue: {

required: true,

min: 1

},

maxvalue: {

required: true,

max: 100

},

range: {

required: true,

range: [20, 40]

},

url: {

required: true,

url: true

},

filename: {

required: true,

extension: "jpeg|png"

},

}

});

});

</script>



</body>



</html>





Previous Next


Trending Tutorials




Review & Rating

0.0 / 5

0 Review

5
(0)

4
(0)

3
(0)

2
(0)

1
(0)

Write Review Here


Ittutorial