login.php 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. <?php
  2. require_once __DIR__ . '/../config.php';
  3. // Handle logout
  4. if (isset($_GET['logout'])) {
  5. $_SESSION['admin_logged_in'] = false;
  6. session_destroy();
  7. header('Location: login.php');
  8. exit;
  9. }
  10. $error = '';
  11. if ($_SERVER['REQUEST_METHOD'] === 'POST') {
  12. $password = $_POST['password'] ?? '';
  13. if (password_verify($password, ADMIN_PASSWORD_HASH)) {
  14. $_SESSION['admin_logged_in'] = true;
  15. header('Location: index.php');
  16. exit;
  17. } else {
  18. $error = 'Falsches Passwort.';
  19. }
  20. }
  21. // Redirect if already logged in
  22. if (isset($_SESSION['admin_logged_in']) && $_SESSION['admin_logged_in']) {
  23. header('Location: index.php');
  24. exit;
  25. }
  26. ?>
  27. <!DOCTYPE html>
  28. <html lang="de">
  29. <head>
  30. <meta charset="UTF-8">
  31. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  32. <title>Admin Login - <?php echo SITE_NAME; ?></title>
  33. <link rel="stylesheet" href="<?php echo SITE_URL; ?>/assets/css/style.css">
  34. </head>
  35. <body>
  36. <header>
  37. <div class="container">
  38. <h1><?php echo SITE_NAME; ?> - Admin</h1>
  39. </div>
  40. </header>
  41. <main>
  42. <div class="container" style="max-width: 400px; margin-top: 4rem;">
  43. <h2>Admin Login</h2>
  44. <?php if ($error): ?>
  45. <div class="alert alert-error">
  46. <?php echo htmlspecialchars($error); ?>
  47. </div>
  48. <?php endif; ?>
  49. <form method="POST" style="background: white; padding: 2rem; border-radius: 8px; box-shadow: 0 2px 4px rgba(0,0,0,0.1);">
  50. <div class="form-group">
  51. <label for="password">Passwort:</label>
  52. <input type="password" id="password" name="password" required autofocus>
  53. </div>
  54. <button type="submit" class="btn" style="width: 100%;">Anmelden</button>
  55. </form>
  56. <div style="text-align: center; margin-top: 1rem;">
  57. <a href="<?php echo SITE_URL; ?>/index.php" style="color: #6c757d;">Zurück zum Shop</a>
  58. </div>
  59. </div>
  60. </main>
  61. </body>
  62. </html>