Вот пример PHP-кода, использующего объектно-ориентированное программирование (ООП) для реализации системы входа в систему с аутентификацией пользователя из базы данных:
<?php
class User {
private $conn;
public function __construct() {
// Establish database connection
$this->conn = new PDO("mysql:host=localhost;dbname=your_database_name", "username", "password");
}
public function login($username, $password) {
// Sanitize input
$username = htmlspecialchars($username);
$password = htmlspecialchars($password);
// Prepare SQL statement
$stmt = $this->conn->prepare("SELECT * FROM users WHERE username = :username");
$stmt->bindParam(':username', $username);
$stmt->execute();
// Fetch user data
$user = $stmt->fetch(PDO::FETCH_ASSOC);
// Verify password
if ($user && password_verify($password, $user['password'])) {
// Password is correct, user is authenticated
return true;
} else {
// Invalid username or password
return false;
}
}
}
// Usage example
$user = new User();
if ($user->login('username', 'password')) {
echo "Login successful!";
} else {
echo "Invalid username or password.";
}
?>
В этом коде предполагается, что у вас есть таблица базы данных с именем usersсо столбцами usernameи password. Он использует подготовленные операторы для предотвращения внедрения SQL и функцию password_verify()для проверки пароля по хешированному паролю, хранящемуся в базе данных.