PHP Bildergalerie mit offenem Quelltext: Aufbau und Lizenz

 

Eine PHP Bildergalerie ist ein Programm in der Sprache PHP, das auf Ihrem Webspace läuft und Ihre Fotos aus Ordnern und einer Datenbank zu fertigen Galerie-Seiten zusammensetzt. Weil PHP-Code als lesbarer Text vorliegt, können Sie bei solchen Galerien in der Regel nachsehen, wie sie arbeiten, und sie anpassen. Ob eine Galerie im strengen Sinn Open Source ist, entscheidet aber erst ihre Lizenz. Diese Seite erklärt, wie eine PHP Bildergalerie technisch funktioniert, wie das kostenlose Bildergalerie-Script aufgebaut ist und was Sie mit seinem Quelltext tun dürfen.

So arbeitet eine PHP Bildergalerie

Laptop auf einem Holztisch mit Programmcode auf dem BildschirmRuft ein Besucher Ihre Galerie auf, schickt der Browser eine Anfrage an den Webserver. Der startet PHP, und PHP holt aus der Datenbank, welche Kategorien und Bilder es gibt. Daraus baut es eine HTML-Seite mit den Vorschaubildern und schickt sie zurück. Die Fotos selbst liegen nicht in der Datenbank, sondern als normale Dateien in Ordnern auf dem Server. In der Datenbank stehen nur ihre Namen, die Kategorie und die Beschreibung.

Die Vorschaubilder entstehen ebenfalls in PHP. Dafür nutzt die Galerie die Erweiterung GD, die ein Foto öffnen, verkleinern und neu speichern kann. Das passiert einmal beim Hochladen, danach liefert der Server nur noch die fertige kleine Datei aus. Die Grafik zeigt den Ablauf.

PHP Bildergalerie: was beim Aufruf einer Kategorie passiert Der Browser ruft bildergalerie.php?kid=3 auf. Der Webserver startet PHP. PHP fragt die Datenbank nach den Bildern der Kategorie 3; ein Zwischenspeicher im Ordner cache spart wiederholte Abfragen. Die Vorlage tpl/bildergalerie.html liefert das Aussehen. PHP setzt daraus eine HTML-Seite mit den Vorschaubildern aus bilder/tn zusammen und schickt sie an den Browser. Die Fotos liegen als Dateien im Ordner bilder, die Datenbank kennt nur Namen, Kategorie und Beschreibung. Browser ruft die Kategorie auf: bildergalerie.php?kid=3 PHP baut die Seite und holt sich dafür: Datenbank Namen, Kategorie, Beschreibung Der Ordner cache/ spart wiederholte Abfragen. Vorlage tpl/bildergalerie.html liefert das Aussehen Fertige HTML-Seite mit Vorschaubildern zurück an den Browser Die Fotos liegen als Dateien in bilder/, die Vorschaubilder in bilder/tn/. Die Datenbank kennt nur ihre Namen.
Eine PHP Bildergalerie setzt jede Seite aus Datenbank, Vorlage und Bilddateien zusammen, der Besucher bekommt nur fertiges HTML.

Der Aufbau des Bildergalerie-Scripts

Das kostenlose Bildergalerie-Script folgt genau diesem Muster. Wer in den Code schaut, findet eine übersichtliche Ordnung:

TeilInhalt
inc/PHP-Klassen und die config.php mit den Datenbank-Zugangsdaten, per .htaccess gegen direkten Aufruf gesperrt
tpl/bildergalerie.htmldie Vorlage mit den Platzhaltern {AUSGABE_KATEGORIE} und {AUSGABE_BILDERGALERIE}
css/, js/Aussehen und die Lightbox für die große Ansicht
bilder/je Kategorie ein Ordner mit den Originalen, in bilder/tn/ Vorschaubilder und verkleinerte Kopien
Datenbankfünf Tabellen: admin, admin_log, bilder, einstellung, kategorie

Der PHP-Code ist in Klassen aufgeteilt, sodass sich eigene Funktionen ergänzen lassen, ohne alles umzubauen. Für das Aussehen genügt meist die Vorlage plus eine eigene CSS-Datei. Die Datenbank-Grundlagen dahinter erklärt Was ist MySQL.

Ist diese PHP Bildergalerie Open Source?

Der Quelltext liegt lesbar im Download, Sie hosten selbst und zahlen keine Lizenzgebühr. Sie dürfen den Code für Ihre eigene Website frei verändern. Zwei Bedingungen aus den Lizenzbedingungen unterscheiden das Script aber von Open Source nach der Definition der Open Source Initiative: Der Copyright-Hinweis muss erhalten bleiben, er lässt sich für einmalig 20 Euro je Domain entfernen. Und veränderte Fassungen dürfen Sie nicht als kommerzielle Software verkaufen. Genauer erklärt das Was ist Open Source.

Wer eine Galerie unter einer echten Open-Source-Lizenz wie der GPL sucht, findet sie etwa in Piwigo oder Coppermine. Beide bringen deutlich mehr Funktionen mit, darunter Kommentare und Benutzerkonten, und entsprechend mehr Pflegeaufwand. Das Bildergalerie-Script verzichtet bewusst darauf: Kommentare, Bewertungen, Suche und Wasserzeichen gibt es nicht.

Die PHP Bildergalerie einsetzen

Sie brauchen einen Webspace mit PHP 8.2 bis 8.5, den Erweiterungen GD, mysqli und mbstring sowie eine MySQL- oder MariaDB-Datenbank. Die Datenbank legen Sie im Kundenmenü an, verwalten lässt sie sich bei Bedarf mit phpMyAdmin. Danach laden Sie die Dateien per FTP hoch und rufen die Installation auf, die alle Voraussetzungen prüft. Schritt für Schritt beschreibt das die Installationsanleitung als PDF.

Ihre eigene PHP Bildergalerie ist in etwa fünf Minuten installiert: Bildergalerie-Script kostenlos herunterladen.

Häufige Fragen

Zur PHP Bildergalerie kommen diese Fragen am häufigsten.

Muss ich PHP können, um die Galerie zu nutzen?

Nein. Installation, Upload und Einstellungen erledigen Sie im Browser. PHP-Kenntnisse brauchen Sie nur, wenn Sie eigene Funktionen ergänzen wollen.

Darf ich den Code für Kunden anpassen?

Ja, für die Website eines Kunden dürfen Sie Vorlage und Code verändern. Der Copyright-Hinweis bleibt dabei erhalten oder wird für diese Domain freigekauft. Eine veränderte Fassung als eigenes Produkt zu verkaufen, ist nicht erlaubt.

Warum liegen die Fotos nicht in der Datenbank?

Weil Dateien im Ordner schneller ausgeliefert werden und sich leichter sichern lassen. Die Datenbank bleibt dadurch klein. Für eine Sicherung kopieren Sie den Ordner bilder und exportieren die Datenbank.

Fragen zu Fotos, Webspace oder Installation? Antworten finden Sie im Bildergalerie Ratgeber.