Course Content
About Lesson

Login/logout session handling

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>
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!";
}
?>
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>';
?>
PHP
<?php
session_start();
session_unset();
session_destroy();

echo "You have been logged out.";
echo '<br><a href="login.php">Login Again</a>';
?>
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']; ?>">
  • 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.