In this tutorial about Simple Login, Registration, Logout Using PHP/MYSQL, you will learn a simple tutorial on creating a login and registration on your web page.
You will also learn on how developers create a panel which is accessible only by the logged for non-logged users. And also by destroying the session or for logging out.
Let’s start our tutorial Simple Login, Registration, Logout Using PHP/MYSQL
So first, create a database, then name it as any name you desire. In my case, I use “itsourcecode” as the name of the database.
Create a table, then name its as “users“. Then put the following attributes.
CREATE TABLE `users` ( `user_id` int(11) NOT NULL, `username` text NOT NULL, `password` text NOT NULL, `full_name` text NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
Create an “index.php” file then put the following codes.
<?php
include 'connection.php';
session_start();
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Simple Login & Registration in PHP & MYSQL</title>
</head>
<body>
<?php
if (!isset($_SESSION['username'])) { ?>
<h5>Login</h5>
<form method="post" action="login-action.php">
<label>Username:</label><br>
<input type="text" name="username" /><br>
<label>Password:</label><br>
<input type="password" name="password" /><br>
<input type="submit" value="Login" />
</form>
Not a member yet? Click <a href="registration.php">here</a> to register.
<?php } else if (isset($_SESSION['username'])) { ?>
<?php echo $_SESSION['username'] ?> | <a href="logout.php">Logout</a>
<?php }
?>
</body>
</html>
Create a “connection.php” file then put the following codes.
<?php
$mysqli = new mysqli('localhost', 'root', '', 'itsourcecode');
?>
Create a “registration.php” file then put the following codes.
<?php
include 'connection.php';
session_start();
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Registration</title>
</head>
<body>
<?php
if (!isset($_SESSION['username'])) { ?>
<h5>Registration</h5>
<?php
if (isset($_GET['register_action'])) {
if ($_GET['register_action'] == "success") { ?>
Successfully Registered!
<?php }
}
?>
<form method="post" action="register-action.php">
<label>Username:</label><br>
<input type="text" name="username" /><br>
<label>Password:</label><br>
<input type="password" name="password" /><br>
<label>Full Name:</label><br>
<input type="text" name="name" /><br>
<input type="submit" value="Register" />
</form>
Already a member? Click <a href="index.php">here</a> to login.
<?php } else { ?>
You already logged in. Click <a href="logout.php">here</a> to logout.
<?php }
?>
</body>
</html>
Create “register-action.php” file then put the following codes.
<?php
include 'connection.php';
if (isset($_POST['username'])) {
$username = $_POST['username'];
$password = $_POST['password'];
$name = $_POST['name'];
$register = $mysqli->query("INSERT INTO users (username, password, full_name) VALUES ('$username', '". md5($password)."', '$name')");
if ($register) {
header("Location: registration.php?register_action=success");
} else {
echo $mysqli->error;
}
}
?>
Then create a “login-action.php” file then put the following codes.
<?php
include 'connection.php';
session_start();
if (isset($_POST['username'])) {
$username = $_POST['username'];
$password = $_POST['password'];
$login = $mysqli->query("SELECT * FROM users WHERE username = '$username' AND password = '".md5($password)."'");
if ($login->num_rows <= 1) {
$_SESSION['username'] = $username;
header("Location: index.php");
} else {
echo $mysqli->error;
}
}
?>
Last, for the logout. Create a “logout.php” file then put the following codes.
<?php
session_start();
if (session_destroy()) {
header("Location: index.php");
}
?>
That’s all thank you.
If you have any question or suggestion about Simple Login, Registration, Logout Using PHP/MYSQL, Please feel free to contact us at our contact page.
Frequently Asked Questions
How does this PHP login or registration system work?
User signup form (with email verification optional), password hashing via password_hash() / password_verify(), login form with session_start(), remember-me cookie, logout, password reset via emailed token.
What PHP and MySQL versions does this project require?
Most projects in this batch run on PHP 7.4 to PHP 8.2 with MySQL 5.7+ or MariaDB 10+. A few older projects need PHP 5.6 (deprecated, use XAMPP 7.x). To run: install XAMPP / WAMP / Laragon, extract project to htdocs, import the included .sql file via phpMyAdmin, edit the connection file (usually config.php or db_connect.php) with your DB credentials, browse to the project URL in your browser.
How do I set up the database for this PHP project?
Open phpMyAdmin (http://localhost/phpmyadmin/ on XAMPP), create a new empty database with the name specified in the project’s config.php. Click the Import tab, choose the included .sql file, click Go. Then edit config.php (or includes/connection.php) with: ‘localhost’, your MySQL username (usually ‘root’), your MySQL password (usually blank for XAMPP), and the database name.
Can I use this PHP project for a BSIT capstone or thesis?
Yes, but extend it. A bare CRUD app is too narrow for full capstone scope. Add: user roles via session checks, reports/dashboards (Chart.js + AJAX), PDF exports (TCPDF library), email notifications (PHPMailer), real domain extension (analytics, audit log, multi-branch support). Pair with Chapter 1-5 documentation matching your panel’s rubric.
Why am I getting ‘connection error’ or ‘undefined function mysqli_connect’?
Three common PHP issues: (1) Connection error: Apache + MySQL services not running in XAMPP control panel, OR database name in config.php does not match what you created in phpMyAdmin. (2) ‘undefined function mysqli_connect’: MySQL extension not enabled, in php.ini uncomment extension=mysqli (then restart Apache). (3) ‘No such file or directory’: MySQL socket path wrong, use 127.0.0.1 instead of localhost in the connection string.
Where can I find more PHP projects with source code?
Browse the PHP Projects hub for the full library (300+ vanilla PHP systems). For modern PHP MVC alternatives see Laravel Projects (74 systems) or CodeIgniter Projects (32 systems). For BSIT-focused capstone idea lists see 150 Best Capstone Project Ideas.
