How To Check Email Already Exist Or Not In Laravel

Websolutionstuff | Aug-07-2020 | Categories : Laravel PHP jQuery

In this article, we will show how to check whether the email already exists or not in laravel. Also, we will check laravel unique email validation. And if the email id exists in the database or not using the ajax call jquery.

Many times users register with duplicate or existing email IDs and it is very difficult to maintain data or records in the database. So we will check email exists or not, if the email already registers with the same email id then we will display an error message to the user like the email already exists.

So, let's see laravel check whether the email address already exists or not in the database.

Here I have created a controller and added the below code in my controller.

Use Response;
public function userEmailCheck(Request $request)
{

	$data = $request->all(); // This will get all the request data.
	$userCount = User::where('email', $data['email']);
	if ($userCount->count()) {
		return Response::json(array('msg' => 'true'));
	} else {
		return Response::json(array('msg' => 'false'));
	}
}

 

 

Now create a blade file for view and add javascript validation in this file.

<div class="form-group row">
	<label for="email" class="col-md-4 col-form-label text-md-right">{{ __('E-Mail Address') }}</label>

	<div class="col-md-6">
		<input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email">

		@error('email')
			<span class="invalid-feedback" role="alert">
				<strong>{{ $message }}</strong>
			</span>
		@enderror
	</div>
</div>

<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>  // if required
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.19.2/jquery.validate.min.js" type="text/javascript"></script>

<script>    
    var email =  $("#email").val();
    $('#registration').validate({
        rules: {            
            email: {
                required: true,
                email: true,
                remote: {
                    url: '{{url('user/checkemail')}}',
                    type: "post",
                    data: {
                        email:$(email).val(),
                        _token:"{{ csrf_token() }}"
                        },
                    dataFilter: function (data) {
                        var json = JSON.parse(data);
                        if (json.msg == "true") {
                            return "\"" + "Email address already in use" + "\"";
                        } else {
                            return 'true';
                        }
                    }
                }
            }
        },
        messages: {            
            email: {
                required: "Email is required!",
                email: "Enter A Valid EMail!",
                remote: "Email address already in use!"
            }
        }
    });
</script>

 


You might also like:

Recommended Post
Featured Post
How to Create Pie Chart in Vue 3 using vue-chartjs
How to Create Pie Chart in Vue...

Hello, web developers! In this article, we'll see how to create a pie chart in vue 3 using vue-chartjs. Here, w...

Read More

Jul-29-2024

Laravel 8 Toastr Notifications Example
Laravel 8 Toastr Notifications...

Today, I will show you Laravel 8 Toastr Notifications Example. There are many types of notifications availa...

Read More

Oct-19-2020

How to Create Slider using jQuery
How to Create Slider using jQu...

In this post we will see how to create slider using jquery, here we will use owl carousel for create slider using b...

Read More

Aug-04-2021

Laravel 9 whereDay / whereYear / whereTime Example
Laravel 9 whereDay / whereYear...

In this article, we will see the laravel 9 whereDay / whereYear / whereTime query example. The whereDay&n...

Read More

Oct-20-2022