X

Live Username Availability Check using PHP

Creating a form that tells you that your entered data already exist in the database and you don’t need to enter again. This is very famous functionality adopted by almost all top social companies like Facebook and Twitter.

In this tutorial, we are going to learn how to create a PHP script that shows Live username availability check using PHP. Check username from MySQL database data using PHP and Jquery. So let’s start Live Username Availability Check using PHP

First, Create Database and In database create a table with name users

Create Table

Create a table with name user and in this table, we are creating three attributes id, name, and username.

CREATE TABLE user
( id INT(11) NOT NULL AUTO_INCREMENT,
  name VARCHAR(30) NOT NULL,
  username VARCHAR(25),
  CONSTRAINT contacts_pk PRIMARY KEY (id)
);

After creating the table we have to create Interface where we put our query for checking the username whether that particular username available or not into our table.

Database Connection

After creating a table we need to connect our PHP script to the database.

<?php
$con=mysqli_connect("localhost","root","","live") or die("Unable to connect Database");
?>

Input Design

In an input, we need only one input box for query and one span tag for showing the result.

<head>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<div class = "jumbotron" align = "center">
<input type = "text" name = "username" id = "username" placeholder = "Enter your UserName"> 
</div>
<div align = "center">
<span id = "Result" align = "center"></span>
</div>

Here I add some bootstrap CSS for good UI

javascript for search result

Here I used KEYUP() function where when the user writes something in input box then KEYUP() function event is called and send ajax POST request to “check.php” file. If the username is available then it said: ” User Not Taken, Available “.

<script type="text/javascript">
		$(document).ready(function() {
			$('#username').keyup(function(){
		      $.post("check.php", {
		        username: $('#username').val()
		      }, function(response){
		        $('#Result').fadeOut();
		        setTimeout("finishAjax('Result', '"+escape(response)+"')", 400);
		      });
		    	return false;
			});
		});
		function finishAjax(id, response) {
		  $('#Result').hide();
		  $('#'+id).html(unescape(response));
		  $('#'+id).fadeIn();
		} 
</script>

check.php file

This file checks whether this username is available or not in the database.

<?php
$con=mysqli_connect("localhost","root","","live") or die("Unable to connect Database");
if(isset($_POST) & !empty($_POST)){
	$username = mysqli_real_escape_string($con,$_POST['username']);
	$sql = "SELECT username FROM user WHERE username = '$username'";
	$result = mysqli_query($con,$sql);
	$count = mysqli_num_rows($result);
	if($count == 1){
		echo "<b style = 'color:#ff0000;'>"."Username Taken, Not Available"."</b>";
	}else{
		echo "<b style ='color:#008000;'>"."User Not Taken, Available"."</b>";
	}
}
?>

Full code for this live search

index.php

<?php
$con=mysqli_connect("localhost","root","","live") or die("Unable to connect Database");
?>
<head>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<div class = "jumbotron" align = "center">
<input type = "text" name = "username" id = "username" placeholder = "Enter your UserName"> 
</div>
<div align = "center">
<span id = "Result" align = "center"></span>
</div>

<script type="text/javascript" src="http://code.jquery.com/jquery-1.8.2.js"></script>
 
	<script type="text/javascript">
		$(document).ready(function() {
			$('#username').keyup(function(){
		      $.post("check.php", {
		        username: $('#username').val()
		      }, function(response){
		        $('#Result').fadeOut();
		        setTimeout("finishAjax('Result', '"+escape(response)+"')", 400);
		      });
		    	return false;
			});
		});
		function finishAjax(id, response) {
		  $('#Result').hide();
		  $('#'+id).html(unescape(response));
		  $('#'+id).fadeIn();
		} 
</script>

check.php

<?php
$con=mysqli_connect("localhost","root","","live") or die("Unable to connect Database");
if(isset($_POST) & !empty($_POST)){
	$username = mysqli_real_escape_string($con,$_POST['username']);
	$sql = "SELECT username FROM user WHERE username = '$username'";
	$result = mysqli_query($con,$sql);
	$count = mysqli_num_rows($result);
	if($count == 1){
		echo "<b style = 'color:#ff0000;'>"."Username Taken, Not Available";
	}else{
		echo "<b style ='color:#008000;'>"."User Not Taken, Available";
	}
}
?>

You can also check:-

Ajax Live Data Search using PHP and MySQL

Insert Data into MySQL database with PHP and AJAX without refreshing page

Dynamic Dependent Multiple Relational Dropdown using (Jquery, AJAX, PHP, MySQL)

I hope this post helped you to know Live Username Availability Check using PHP. To get the latest news and updates follow us on twitter facebook, subscribe to our YouTube channel.  And If you have any query then please let us know by using the comment form.

Jamaley Hussain: Hello, I am Jamaley. I did my graduation from StaffordShire University UK . Fortunately, I find myself quite passionate about Computers and Technology.
Related Post