Event Bilder Upload
Ein einfacher, moderner und responsiver Web-Service zum datumsgenauen Hochladen von Bildern für beliebige Events.
Organisatorische Details
- Zweck: Sammeln von Bildern von Teilnehmern eines Events.
- Limitierungen:
- Maximale Dateigröße pro Bild: 15 MB
- Erlaubte Formate: JPG, JPEG, PNG, GIF, WEBP, TIFF, HEIC
- Deadline: Ein Upload-Zeitraum kann festgelegt werden. Nach Ablauf der Deadline sind keine Uploads mehr möglich. Der Countdown wird live auf der Seite angezeigt.
- Dateibenennung: Die hochgeladenen Dateien werden serverseitig automatisch umbenannt. Das Format ist
Datum - Beschreibung.Endung. Das Datum wird dabei intelligent aus den EXIF-Daten (Erstellungsdatum) des Bildes ausgelesen. - Speicherort: Alle Bilder werden im Unterordner
images/abgelegt.
Technische Details
- Technologie-Stack:
- Backend: PHP (Einzelne Datei
index.php) - Frontend: HTML5, Vanilla JavaScript, Vanilla CSS
- Backend: PHP (Einzelne Datei
- Architektur:
- Keine Datenbank erforderlich.
- Asynchrone Uploads via AJAX inklusive Fortschrittsbalken und Einzelstatus pro Bild.
- Client-seitige und Server-seitige Validierung (Dateityp, Größe, Deadline).
- Abhängigkeiten:
- Webserver (z. B. Nginx, Apache oder Lighttpd)
- PHP 8.x
- PHP-Erweiterungen:
session,json,exif(für das Auslesen des Aufnahmedatums),mbstring
Konfiguration
Das Skript ist neutral gestaltet und kann für jedes beliebige Event genutzt werden. Alle Anpassungen können direkt im Kopfbereich der Datei index.php vorgenommen werden. Es sind keine weiteren Änderungen im HTML-Code nötig.
// EVENT CONFIGURATION
const EVENT_NAME = 'Event Bilder Upload';
const EVENT_SUBTITLE = 'Speichere deine Momente datumsgerecht.';
// DEADLINE CONFIGURATION
// Format: YYYY-MM-DD HH:MM:SS
const UPLOAD_DEADLINE = '2026-11-30 23:59:59';
Installation auf einem frischen Alpine Linux
Die folgende Anleitung beschreibt die schnelle Einrichtung auf einem frisch installierten Alpine Linux System unter Verwendung des integrierten PHP-Webservers.
-
System aktualisieren:
apk update apk upgrade -
PHP und benötigte Erweiterungen installieren:
apk add php php-json php-exif php-mbstring php-session -
Projektdateien bereitstellen: Legen Sie die Datei
index.phpin das gewünschte Verzeichnis auf dem Server (z. B./var/www/imgsender). -
Verzeichnisrechte anpassen: Damit das Skript den Ordner
images/anlegen und die hochgeladenen Bilder speichern kann, benötigt der ausführende Nutzer Schreibrechte in dem Verzeichnis.cd /var/www/imgsender chmod 777 .(Hinweis: Für den dauerhaften produktiven Einsatz mit einem echten Webserver wie Nginx oder Lighttpd sollten die Rechte restriktiver auf den jeweiligen Webserver-Nutzer, z. B.
nobody, angepasst werden:chown -R nobody:nobody .) -
Server starten: Für Testzwecke oder simple Deployments kann der integrierte PHP-Server genutzt werden:
php -S 0.0.0.0:8080 -t .Die Anwendung ist nun über den Browser unter
http://<server-ip>:8080erreichbar.
