Laravel Email Validation or Empty

Morris Muriuki Muthigani
75
0
laravel

02/07/2023 (1 year ago)


In this example,I will learn you how to use valid email or empty validation in laravel.you can easy to use valid email validation in laravel.

In this example, i want to show you how to use email validation with optional field in laravel application. so if user does not want to add email then it's optional and if he enter something on text box then email validation will execute.

Here is a solution and i also give you full example with route and view file too.

Let's see bellow solution:

$validator = $request->validate([

    'name' => 'required|nullable|string',

    'email' => 'nullable|email',

]);

Route : routes/web.php

Route::get('email-validation','TestController@index');
Route::post('email-validation/store','TestController@store')->name('emailvalidation.store');

Controller : app/Http/Controller/

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class  TestController extends Controller
{
    public function index()
    {
        return view('form');
    }

    public function store(Request $request)
    {
            $input=$request->all();

            $validator = $request->validate([
                'name' => 'required|nullable|string',
                'email' => 'nullable|email',
            ]);

            return redirect()->back();
    }
}

View : resources/views/form.blade.php

<!DOCTYPE html>
<html>
<head>
    <title>laravel validation email or empty</title>
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.4.1/css/bootstrap.min.css" integrity="sha256-L/W5Wfqfa0sdBNIKN9cG6QA5F2qx4qICmU2VgLruv9Y=" crossorigin="anonymous" />
    <script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.4.1/js/bootstrap.min.js" integrity="sha256-WqU1JavFxSAMcLP2WIOI+GB2zWmShMI82mTpLDcqFUg=" crossorigin="anonymous"></script>
</head>
<body style="background: skyblue">
    <div class="container">
        <div class="row">
            <div class="col-md-6 offset-3">
                <div class="card mt-5">
                    <div class="card-header bg-success">
                        <h3 class="text-white text-center"><strong>laravel validation email or empty nicesnippets.com</strong></h3>
                    </div>
                    <div class="card-body">
                        @if(count($errors) > 0)
                            @foreach($errors->all() as $error)
                                <div class="alert alert-danger">{{ $error }}</div>
                            @endforeach
                        @endif
                        <form action="{{ route('emailvalidation.store') }}" method="post">                
                            @csrf
                            <div class="form-group">
                                <label><b>Name :-</b></label>
                                <input type="text" name="name" class="form-control" value="{{ old('password') }}">
                            </div>
                            <div class="form-group">
                                <label><b>Email:-</b></label>
                                <input type="text" name="email" class="form-control" value="{{ old('email') }}">
                            </div>
                            <div class="form-group text-center">
                                <button class="btn btn-success" type="submit">Save</button>
                            </div>
                        </form>     
                    </div>
                </div>      
            </div>
        </div>
    </div>
</body>
</html>



Discussion (0)

Recent Blogs

Our Recent Blogs