How to validate email and check for duplicate record
Hello,
I want to check for a duplicate email in the database but cannot validate the user input. I want to check if the user input is a valid email or not, if it is not an error message is to be displayed. my JS code is: //When the dom is ready $(document).ready(function() { //if theres a change in the email textbox $("#email").change(function() { //Get the value in the email textbox var email = $("#email").val(); var length = /^[a-zA-Z0-9]+[a-zA-Z0-9_.-]+[a-zA-Z0-9_-]+@[a-zA-Z0-9]+[a-zA-Z0-9.-]+[a-zA-Z0-9]+.[a-z]{2,4}$/; //if the lenght greater than 3 characters if(email.length > 3) { //Add a loading image in the span id="availability_status" $("#email_status").html('<img src="images/loader.gif" align="absmiddle"> Checking availability...'); //Make the Ajax Request $.ajax({ type: "POST", //file name url: "../livecheck.php", //data data: "email="+ email, success: function(server_response){ $("#email_status").ajaxComplete(function(event, request){ //if ajax_check_email.php return value "0" if(server_response == '0') { //add this image to the span with id "availability_status" $("#email_status").html('<img src="images/available.png" align="absmiddle"> <font color="Green"> Available </font>'); //if it returns "1" } else if(server_response == '1') { $("#email_status").html('<img src="images/not_available.png" align="absmiddle"> <font color="Red">Not Available </font>'); } }); } }); } else { //if in case the email is less than or equal 3 characters only $("#email_status").html('<font color="#cc0000">Invlaid email, please correct</font>'); } return false; }); });My php code to check for email in database is: <?php require_once("includes/database.php"); require_once("includes/functions.php"); //Include The Database Connection File if($_POST && !empty($_POST['email'])) { //If a email has been submitted $email = mysql_real_escape_string($_POST['email']);//Some clean up :) $email = $_POST['email']; if (filter_var($email, FILTER_VALIDATE_EMAIL)) { $check_for_username = mysql_query("SELECT id FROM users WHERE email = '$email'"); //Query to check if email is available or not if(mysql_num_rows($check_for_username)) { echo '1'; //If there is a record match in the Database - Not Available } else { echo '0'; //No Record Found - Email is available } } } ?> Can anyone help to correct this please. thank you
3 Answers
Buy Adderall In The Uk cialis generic Canada Pharmacy On Line
Posted: Ellgaibra 0 of 0 people found this answer helpful. Did you? Yes No
This still does not validate email address to see if it is a valid email being provided
Posted: qakbar 0 of 1 people found this answer helpful. Did you? Yes No
Your if statement will return true in most casesTry to replace it to
if(mysql_num_rows($check_for_username) > 0) { echo '1'; //If there is a record match in the Database - Not Available } else { echo '0'; //No Record Found - Email is available } Posted: hemagx Edited: hemagx 2 of 3 people found this answer helpful. Did you? Yes No |
© Advanced Web Core. All rights reserved