Admin Login And Logout Code In Php

6 min read Jun 22, 2024
Admin Login And Logout Code In Php

Admin Login and Logout Code in PHP

This article will guide you through creating a simple yet secure admin login and logout system using PHP.

Setting Up the Database

  1. Create a database: Use a database management tool like phpMyAdmin or MySQL Workbench to create a database. Name it something appropriate, such as "admin_login".
  2. Create a table: Inside the database, create a table named "users" with the following columns:
    • id (INT, PRIMARY KEY, AUTO_INCREMENT): Unique identifier for each user.
    • username (VARCHAR(255)): The username used for login.
    • password (VARCHAR(255)): The user's password, stored securely using hashing.

PHP Code for Login

1. Login Form (login.php):




  Admin Login


  

Admin Login







2. Login Processing (login_process.php):

 0) {
      $row = mysqli_fetch_assoc($result);
      // Verify password
      if (password_verify($password, $row["password"])) {
        // User authenticated
        $_SESSION["user_id"] = $row["id"];
        $_SESSION["username"] = $row["username"];
        header("Location: admin_dashboard.php");
      } else {
        // Wrong password
        echo "Incorrect password.";
      }
    } else {
      // User not found
      echo "Invalid username.";
    }
  }
  mysqli_close($conn);
?>

Explanation:

  • Session Handling: The session_start() function initializes a session to store user data.
  • Database Connection: The include "db_connection.php" line incorporates the database connection file.
  • Form Input: Collects the username and password from the login form.
  • Security: Sanitizes inputs to prevent SQL injection attacks.
  • Password Hashing: Uses password_hash() to securely store passwords.
  • SQL Query: Retrieves user details from the database.
  • Authentication: Verifies the entered password against the stored hash using password_verify().
  • Session Variables: If authentication succeeds, stores the user's ID and username in session variables.
  • Redirection: Redirects the user to the admin dashboard (admin_dashboard.php).
  • Error Handling: Displays error messages for incorrect username or password.

PHP Code for Logout

Logout Page (logout.php):


Explanation:

  • Session Start: Initializes the session to access session variables.
  • Session Destroy: Uses session_destroy() to terminate the current session, clearing all session data.
  • Redirection: Redirects the user to the login page after logging out.

Admin Dashboard (admin_dashboard.php):





  Admin Dashboard


  

Welcome, !

Logout

Explanation:

  • Session Check: Verifies if the user_id session variable exists. If not, redirects to the login page.
  • Welcome Message: Displays a welcome message using the stored username.
  • Logout Link: Provides a link to the logout.php page for logging out.

Additional Security Considerations

  • Input Validation: Always validate user input to prevent malicious data from entering the system.
  • Strong Password Policies: Enforce strong passwords using requirements like length, special characters, and uppercase/lowercase letters.
  • HTTPS: Use HTTPS to encrypt communication between the server and the client, protecting sensitive information from eavesdropping.
  • Two-Factor Authentication (2FA): Implement 2FA for an extra layer of security.
  • Regular Security Updates: Keep all software and libraries up to date to patch vulnerabilities.

This comprehensive guide provides a basic foundation for building a secure admin login and logout system using PHP. Remember to tailor the code and security measures to your specific requirements and follow best practices for robust authentication and authorization.

Related Post