About Lesson
Login/logout session handling
1. Creating a Login System Using Session
Step 1: Login Form (login.php
)
PHP
<form action="login_process.php" method="post">
Username: <input type="text" name="username" required><br>
Password: <input type="password" name="password" required><br>
<input type="submit" value="Login">
</form>
Step 2: Login Processing (login_process.php
)
PHP
<?php
session_start();
// Dummy credentials
$valid_username = "admin";
$valid_password = "1234";
$username = $_POST['username'];
$password = $_POST['password'];
if($username == $valid_username && $password == $valid_password){
// Set session
$_SESSION['loggedin'] = true;
$_SESSION['username'] = $username;
echo "Login successful. Welcome, " . $_SESSION['username'];
echo '<br><a href="dashboard.php">Go to Dashboard</a>';
} else {
echo "Invalid credentials!";
}
?>
Dashboard Page (dashboard.php
)
PHP
<?php
session_start();
// Check if user is logged in
if(!isset($_SESSION['loggedin']) || $_SESSION['loggedin'] !== true){
header("Location: login.php");
exit;
}
echo "Welcome to Dashboard, " . $_SESSION['username'];
echo '<br><a href="logout.php">Logout</a>';
?>
Logout Page (logout.php
)
PHP
<?php
session_start();
session_unset();
session_destroy();
echo "You have been logged out.";
echo '<br><a href="login.php">Login Again</a>';
?>
2. Adding “Remember Me” with Cookies
PHP
<?php
session_start();
if(isset($_POST['remember'])){
setcookie("username", $_POST['username'], time() + (86400 * 30)); // 30 days
}
$_SESSION['loggedin'] = true;
$_SESSION['username'] = $_POST['username'];
?>
On login page, you can pre-fill the username:
PHP
<input type="text" name="username" value="<?php if(isset($_COOKIE['username'])) echo $_COOKIE['username']; ?>">
Summary:
- Use sessions for sensitive user data (like login info).
- Use cookies for user preferences or non-sensitive data.
- Sessions are stored server-side, cookies client-side.
- Combining sessions + cookies can create “Remember Me” login systems.