Simple ajax php mysql login page

Simple ajax php mysql login page

This tutorial will explain you, how to create a Login Script using Ajax with PHP MySQL.
in this tutorial i am going to create a simple login form using php, mysql and ajax. in this tutorial i will explain you how to validate email and password.
after submitted login detail form values send to main php login page using ajax all the process will done without page refreshing.
you can download the script using download button, let’s start the coding.

Create database connection php file connection.php

<?php
//Database connection

$conn=mysqli_connect("localhost","root","") or die(mysqli_error($conn));
mysqli_select_db($conn, "admin") or die(mysqli_error($conn));


//Create table if not exist

mysqli_query("
CREATE TABLE IF NOT EXISTS `users` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(25) NOT NULL,
  `email` varchar(60) NOT NULL,
  `password` varchar(255) NOT NULL,
  `lastlogin` datetime NOT NULL,
  PRIMARY KEY (`id`)
)");
?>

Now create login HTML page.

create a new file and save it as login.php with the following code, this is our main login page contains html user friendly login form which will accepts username, password and all kind of validation errors.

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Simple ajax php mysql login page</title>
</head>
<body>
 <div class="panel-heading" id="login_msg"></div>
 <form method="post">
 <input type="text" id="uname" name="uname" class="form-control" placeholder="Your Username " /><br>
 <input type="password" id="pass" name="pass" class="form-control"  placeholder="Your Password" /><br>
 <input type="button" value="Login Now" name="login" class="btn btn-primary" onClick="login_validate()" />
 </form>
</body>
</html>

Java SCript code

JavaScript/jQuery code which is responsible to do all the things silently, first we check all kind of validation, after that call “authentication.php” through ajaxUrl_code and check username or password match within users table is ok then it will redirect to the index.php page, if not it will display appropriate message within “login_msg” div. this script is completed with proper validation, so use this code and enjoy.

<script>

var baseUrl = "http://www.phpkida.com/";


function login_validate()
{
    var uname=document.getElementById("uname").value;
    var pass=document.getElementById("pass").value;
    err="";
    if(uname=="" && pass=="")
    {
        err="Please enter username and password";
    }
    else if(uname=="" && pass!="")
    {
        err="Please enter username";
    }
    else if(uname!="" && pass=="")
    {
        err="Please enter password";
    }
    if(err!="")
    {
        document.getElementById("login_msg").style.color="red";
        document.getElementById("login_msg").innerHTML=err;
    }
    else
    {
           document.getElementById("login_msg").innerHTML="";
        
            if (window.XMLHttpRequest)
            {// code for IE7+, Firefox, Chrome, Opera, Safari
            xmlhttp=new XMLHttpRequest();
            }
            else
            {// code for IE6, IE5
            xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
            }
            ajaxUrl_code = baseUrl+"authenticate.php?uname="+uname+"&pass="+pass;
            xmlhttp.onreadystatechange = function(){
                    if (xmlhttp.readyState == 4)
                    {
                        msg=xmlhttp.responseText;
                        if(msg=="Authentication Successfull")
                        {
                            document.getElementById("login_msg").style.color="green";
                            document.getElementById("login_msg").innerHTML=msg;
                            window.location=baseUrl;
                        }
                        else if(msg=="Authentication Failed")
                        {
                            document.getElementById("login_msg").style.color="red";
                            document.getElementById("login_msg").innerHTML=msg;
                        }
                    }
            }
            xmlhttp.open("GET", ajaxUrl_code, true);
            xmlhttp.send();
            

    }
    
}

</script>

Now create authenticate.php file.

This file contains only PHP code, this will verify username and password values in users table, this file will work silently at back-end and call via ajaxUrl_code using java script code. if the login was success it gives success message or if fails it will print error message according to values.

<?php
session_start();

require_once("connection.php");



if(isset($uname) && isset($pass))
{
    $uname=$_REQUEST["uname"];
    $pass=$_REQUEST["pass"];
    $pass=md5($pass);

    $sql="select * fro m users where username='$uname' and password='$pass'";
    $res=mysqli_query($conn, $sql) or die(mysqli_error($conn));
    $count=mysqli_num_rows($res);
    if($count>0)
    {
        $today=date("d M Y");
        mysqli_query($conn, "UPDATE `users` SET `lastlogin` = '$today' where username='$uname' and password='$pass'") or die(mysqli_error($conn));
        $_SESSION["uname"]=$uname;
        echo "Authentication Successful";
    }
    else
    {
        echo "Authentication Failed";
    }
}
?>

Now create index.php file.

After successfully login you will redirect on index page means your dashboard page with print welcome message your username and last login date.

<?php
require_once("connection.php");
session_start();
if(isset($_SESSION['uname'])) { 
    $uname=$_SESSION['uname'];    
}
else
{
    header('location:login.php');
    exit;
}

?>
<?php
    $sql="select username,lastlogin from users where username='$uname'";
    $lastlogin=mysqli_query($conn, $sql) or die(mysqli_error($conn));
    $lastloginfet=mysqli_fetch_assoc($lastlogin) or die(mysqli_error($conn));
?>

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Simple ajax php mysql login page</title>
</head>
<body>
<?php echo "Welcome ".$lastloginfet['username']; echo "Last Login : ".$lastloginfet['lastlogin'];?>  
           

<a href="logout.php" class="btn btn-danger square-btn-adjust">Logout</a> </div>
        
</body>
</html>

Now create logout.php file.

so finaly we are creating code of logout script using php, this code execute when you will click on logout button is ok your session will be destroy and you logout successfully.

<?php
session_start();
session_destroy();
header("location:login.php");
?>

Click on Image and download Source Code of This Tutorial

Download source code of Simple ajax php mysql login page

I hope you like this Article. Share with your friends.

3 thoughts on “Simple ajax php mysql login page”

  1. I really like your blog.. very nice colors & theme.
    Did you make this website yourself or did you hire someone
    to do it for you? Plz respond as I’m looking to create my own blog and would like to find out where u got
    this from. many thanks

Leave a Reply

Your email address will not be published. Required fields are marked *

Related Posts: You may like

All Full Forms Related to Database

How to login with LinkedIn oAuth2 in PHP

Extract Total Number of Image And Missing Alt Attribute using php

How to extract Heading tags using PHP from string

How to remove whitespace from string using php

Remove All Special Characters From String PHP

comma separated values in mysql query

SQL statement to retrieve names beginning with A

Redirecting HTTP to HTTPS with PHP

Convert Base64 string to an image file

PHPKIDA Offering Free Tools:

INSTA DOWNLOADER

Free online tool to download Instagram videos, photos and save Instagram videos, photos to your device. It's free & easy to use.

Download Now

CURRENCY CONVERTER

Our real time currency converter calculator will convert your money based on current values from around the world. It's free & easy to use.

Convert Now

ROBOST.TXT GEN.

Create robots txt file that help search engines to crawling and indexing your site with help of our free online Robots.txt Generator tool.

Create Now

HTML MINIFIER

Free online tool to minify or compress html code and reduce the size of html code in few clicks. It's free & easy to use.

Minify Now

CSS MINIFIER

Free online tool to minify or compress css code and reduce the size of css code in few clicks. It's free & easy to use.

Minify Now

JAVASCRIPT MINIFIER

Free online tool to minify or compress javascript code and reduce the size of javascript code in few clicks. It's free & easy to use.

Minify Now

Sign up for weekly update

Milkshake is almost ready. If you're interested in testing it out, then sign up below to get exclusive access.