38780-vm/admin/auth.php
2026-02-26 12:39:58 +00:00

41 lines
1015 B
PHP

<?php
session_start();
require_once __DIR__ . '/../db/config.php';
function is_logged_in() {
return isset($_SESSION['admin_user']);
}
function require_login() {
if (!is_logged_in()) {
header('Location: login.php');
exit;
}
}
function login($username, $password) {
$pdo = db();
$stmt = $pdo->prepare("SELECT * FROM admin_users WHERE username = ?");
$stmt->execute([$username]);
$user = $stmt->fetch();
if ($user && password_verify($password, $user['password'])) {
$_SESSION['admin_user'] = [
'id' => $user['id'],
'username' => $user['username'],
'nickname' => $user['nickname'],
'avatar' => $user['avatar']
];
// Update last login
$stmt = $pdo->prepare("UPDATE admin_users SET last_login = NOW() WHERE id = ?");
$stmt->execute([$user['id']]);
return true;
}
return false;
}
function logout() {
unset($_SESSION['admin_user']);
session_destroy();
}