connect_error) { die("FATALE FOUT: Databaseverbinding mislukt: " . $db_conx->connect_error); } // Check of er al een admin bestaat, zo niet maak er één aan $checkAdmin = $db_conx->query("SELECT COUNT(*) AS cnt FROM admin_users"); if ($checkAdmin) { $row = $checkAdmin->fetch_assoc(); if ($row['cnt'] == 0) { $defaultUser = 'admin'; $defaultPass = password_hash('admin123', PASSWORD_DEFAULT); $stmt = $db_conx->prepare("INSERT INTO admin_users (username, password_hash) VALUES (?, ?)"); $stmt->bind_param("ss", $defaultUser, $defaultPass); $stmt->execute(); $stmt->close(); } } // Redirect als admin al ingelogd is if (isset($_SESSION['admin_logged_in']) && $_SESSION['admin_logged_in'] === true) { header('Location: index.php'); exit(); } $error_message = ''; $success_message = ''; // Login formulier verwerken if ($_SERVER['REQUEST_METHOD'] === 'POST') { if (isset($_POST['login'])) { $username = trim($_POST['username'] ?? ''); $password = $_POST['password'] ?? ''; if (empty($username) || empty($password)) { $error_message = 'Voer zowel de gebruikersnaam als het wachtwoord in.'; } else { $stmt = $db_conx->prepare("SELECT username, password_hash FROM admin_users WHERE username = ?"); $stmt->bind_param("s", $username); $stmt->execute(); $result = $stmt->get_result(); if ($result->num_rows === 1) { $row = $result->fetch_assoc(); if (password_verify($password, $row['password_hash'])) { $_SESSION['admin_logged_in'] = true; $_SESSION['admin_username'] = $username; header('Location: index.php'); exit(); } else { $error_message = 'Ongeldige gebruikersnaam of wachtwoord.'; } } else { $error_message = 'Ongeldige gebruikersnaam of wachtwoord.'; } $stmt->close(); } } if (isset($_POST['reset'])) { $newPass = $_POST['new_password'] ?? ''; $confirmPass = $_POST['confirm_password'] ?? ''; if (empty($newPass) || empty($confirmPass)) { $error_message = 'Vul beide velden in om het wachtwoord te resetten.'; } elseif ($newPass !== $confirmPass) { $error_message = 'Wachtwoorden komen niet overeen.'; } else { $hashedNewPass = password_hash($newPass, PASSWORD_DEFAULT); // Reset voor admin account (alleen één admin) $stmt = $db_conx->prepare("UPDATE admin_users SET password_hash = ? WHERE username = 'admin'"); $stmt->bind_param("s", $hashedNewPass); if ($stmt->execute()) { $success_message = 'Wachtwoord succesvol gereset. Gebruik nu je nieuwe wachtwoord om in te loggen.'; } else { $error_message = 'Fout bij het resetten van het wachtwoord.'; } $stmt->close(); } } } ?>