A Simple PHP Login Script Example

I’m developing a damn keen interest in PHP programming these days. The most wonderful tool and the heart of the web, PHP. Well you can’t take all alone with PHP. You need to be hand wash in JAVA-Script too, at which I’m not good for now.

image

Now am gonna follow PHP tips and tools post too!

Today I’m up here with a simple PHP Login Script, which is very similar concept which you might have seen sticked at many websites such as Facebook!

Now lets have an overview of it:

In this tutorial you’ll have to create 3 files
1. main_login.php  // Sticked with Login form
2. checklogin.php // The thing that will work with your Username and Password
3. login_success.php // What you’ll see once login is successful!

Steps you need to follow:
1. Create table "members" in database "test".
2. Create file main_login.php.
3. Create file checklogin.php.
4. Create file login_success.php.
5. Create file logout.php

Step1: Create table "members"

CREATE TABLE `members` (
`id` int(4) NOT NULL auto_increment,
`username` varchar(65) NOT NULL default ”,
`password` varchar(65) NOT NULL default ”,
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=2 ;


— Insert DATA into newly created DATABASE TABLE–

INSERT INTO `members` VALUES (1, ‘Mohit’, ‘mypassword’);

// A screenshot of PHP MY ADMIN SCREEN

Step2: Create file "main_login.php"

<table width="300" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<form name="form1" method="post" action="checklogin.php">
<td>
<table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF">
<tr>
<td colspan="3"><strong>Member Login </strong></td>
</tr>
<tr>
<td width="78">Username</td>
<td width="6">:</td>
<td width="294"><input name="myusername" type="text" id="myusername"></td>
</tr>
<tr>
<td>Password</td>
<td>:</td>
<td><input name="mypassword" type="text" id="mypassword"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td><input type="submit" name="Submit" value="Login"></td>
</tr>
</table>
</td>
</form>
</tr>
</table>

Step3: Create file checklogin.php

<?php
$host="localhost"; // Host name
$username=""; // Mysql username
$password=""; // Mysql password
$db_name="test"; // Database name
$tbl_name="members"; // Table name

// Connect to server and select databse.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");

// username and password sent from form
$myusername=$_POST[‘myusername’];
$mypassword=$_POST[‘mypassword’];

// To protect MySQL injection (more detail about MySQL injection)
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);

$sql="SELECT * FROM $tbl_name WHERE username=’$myusername’ and password=’$mypassword’";
$result=mysql_query($sql);

// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row

if($count==1){
// Register $myusername, $mypassword and redirect to file "login_success.php"
session_register("myusername");
session_register("mypassword");
header("location:login_success.php");
}
else {
echo "Wrong Username or Password";
}
?>

Step4: Create file login_success.php

// Check if session is not registered , redirect back to main page.
// Put this code in first line of web page.
<?
session_start();
if(!session_is_registered(myusername)){
header("location:main_login.php");
}
?>
<html>
<body>
Login Successful
</body>
</html>

Step5: Create file Logout.php

// Put this code in first line of web page.
<?
session_start();
session_destroy();
?>

 

This is the simple and perfect example of a PHP Login Script. Drop your comments. 😉 Credit

6 thoughts on “A Simple PHP Login Script Example

  1. Anonymous

    Thanks a lot for sharing!

    I, too, can't figure out why I get a blank page when successful. I'm new to PHP and I'd appreciate more insights on what you meant by "check into the sessions" in your reply. email: a.alhaimi1 AT gmail DOT com

    Reply

Leave a Reply

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