Exit-Spieleverwaltung

erdo e40ec11aac Merge branch 'master' of http://gogs.erdo.dmz:6000/erdo/exit-game 2 gün önce
.gitignore c84a55b460 first commit 2 gün önce
README.md cd06a83a22 README angelegt 2 gün önce
admin.php c84a55b460 first commit 2 gün önce
besitz.php c84a55b460 first commit 2 gün önce
config.sample.php c84a55b460 first commit 2 gün önce
db_config.php c84a55b460 first commit 2 gün önce
gesamtliste.php c84a55b460 first commit 2 gün önce
gespielte_spiele.php c84a55b460 first commit 2 gün önce
index.php c84a55b460 first commit 2 gün önce

README.md

🏆 EXIT-Game Highscore & Sammlungs-Manager

Ein modernes, PHP-basiertes Dashboard zur Verwaltung von EXIT-Spielen, Adventure Games und anderen Rätselspielen. Tracke Highscores, verwalte den Besitzstatus deiner Teams und behalte den Überblick über deine gesamte Sammlung.


🤖 Über dieses Projekt

Dieses gesamte Projekt wurde zu 100% von Gemini (KI-Modell von Google) im Rahmen eines interaktiven Pair-Programming-Prozesses generiert.

Entwicklungs-Philosophie:

  • Code-Struktur: Trennung von Logik und Konfiguration (Git-ready).
  • Design: Modernes Dark-Mode UI mit Fokus auf Usability (Swiper.js Integration).
  • Sicherheit: Passwortgeschützter Admin-Bereich und Prepared Statements (PDO).

🚀 Features

  • Interaktives Dashboard: Swiper-Carousel mit den neuesten Spielen und Highscores.
  • Bestandsverwaltung: Matrix-Ansicht (besitz.php), um zu tracken, welches Team welches Spiel besitzt, nicht besitzt oder bereits verkauft hat.
  • Admin-Panel: Passwortgeschützter Bereich zum Anlegen von Spielen, EAN-basiertem Bild-Download und Verwaltung von Spielertypen.
  • Gesamtliste: Sortierbare und filterbare Übersicht aller Spiele inklusive Bestwerten und Besitzstatus.
  • Automatisierung: Automatischer Download von Cover-Bildern über bereitgestellte URLs.

🛠 Installation

  1. Datenbank vorbereiten: Erstelle eine MySQL-Datenbank und führe den folgenden SQL-Befehl aus, um die Tabellenstruktur anzulegen: ```sql CREATE TABLE game_typen (id INT AUTO_INCREMENT PRIMARY KEY, bezeichnung VARCHAR(100)); CREATE TABLE spiele (id INT AUTO_INCREMENT PRIMARY KEY, titel VARCHAR(255), typ_id INT, ean VARCHAR(50), level VARCHAR(50), bild_url VARCHAR(255), FOREIGN KEY (typ_id) REFERENCES game_typen(id)); CREATE TABLE spieler (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100)); CREATE TABLE scores (id INT AUTO_INCREMENT PRIMARY KEY, spieler_id INT, spiel_id INT, zeit INT, hilfe INT, sterne INT, FOREIGN KEY (spieler_id) REFERENCES spieler(id), FOREIGN KEY (spiel_id) REFERENCES spiele(id)); CREATE TABLE besitzstatus (spieler_id INT, spiel_id INT, status ENUM('besitzt', 'nicht besitzt', 'verkauft') DEFAULT 'nicht besitzt', PRIMARY KEY (spieler_id, spiel_id), FOREIGN KEY (spieler_id) REFERENCES spieler(id) ON DELETE CASCADE, FOREIGN KEY (spiel_id) REFERENCES spiele(id) ON DELETE CASCADE);