Bilder Massen Upload für Anfänger erklärt

 

Nach dem Vereinsfest liegen 180 Fotos auf der Speicherkarte, und alle sollen bis zum Abend in der Galerie stehen. Jedes Bild einzeln auszuwählen, abzuschicken und auf die Bestätigung zu warten, würde den Nachmittag kosten. Genau dafür gibt es den Massen-Upload: eine Upload-Funktion, mit der Sie viele Bilddateien auf einmal auswählen und in einem einzigen Vorgang an den Server schicken. Sie markieren den ganzen Stapel, schicken ihn ab und kümmern sich danach nur noch um die Bildtexte. Wie viele Fotos tatsächlich in einen Durchgang passen, entscheidet allerdings nicht Ihr Geduldsfaden, sondern der Webspace, auf dem die Galerie läuft.

Bilder-Massen-Upload: Mehrfachauswahl von sieben Fotos im Upload-Formular und FTP-Import über Bilder verwalten

Was zwischen Klick und Ergebnisseite passiert

Technisch ist ein Massen-Upload für den Browser ein einziges großes Formular. Alle markierten Dateien reisen in einer Anfrage zum Server, hintereinander verpackt. Erst wenn das letzte Byte angekommen ist, beginnt PHP mit der Arbeit. Das erklärt, warum bei zwanzig Handyfotos über eine langsame Leitung zunächst minutenlang scheinbar nichts geschieht: Die Daten sind noch unterwegs. Im Bildergalerie-Script wechselt der Knopf in dieser Zeit seine Beschriftung zu „Bilder werden hochgeladen …“ und lässt sich nicht ein zweites Mal drücken. Einen Prozentbalken gibt es nicht.

Ist alles angekommen, nimmt sich die Galerie die Fotos der Reihe nach vor. Sie prüft am Inhalt, ob wirklich ein JPEG, PNG oder GIF vorliegt, vergibt einen sauberen Dateinamen, legt das Bild im Ordner der Kategorie ab, trägt es in die Datenbank ein und rechnet Vorschaubild und Kopie für die große Ansicht. Jede Datei bekommt dafür eine eigene Laufzeit von 120 Sekunden. Ein Foto, das durchfällt, reißt die anderen nicht mit: Die Ergebnisseite nennt es mit Namen, die übrigen sind trotzdem in der Galerie.

Den Stapel vor dem Massen-Upload vorbereiten

Was Sie am eigenen Rechner aussortieren und umwandeln, müssen Sie später nicht in der Verwaltung nacharbeiten. Gehen Sie den Ordner einmal mit diesen Fragen durch:

  • Stimmt das Format? iPhones speichern oft HEIC, manche Bildprogramme WebP. Beides weist die Galerie zurück, beim HEIC-Foto sogar mit dem ausdrücklichen Hinweis, es vorher als JPEG zu speichern. Wandeln Sie solche Dateien vorab um, dann bleibt der Durchgang vollständig.
  • Brauchen Sie die volle Auflösung? Ein Foto mit 6000 Pixeln Breite wiegt schnell 8 MB. In der großen Ansicht zeigt die Galerie ab Werk höchstens 1024 Pixel, und dafür rechnet sie aus dem Original eine eigene Kopie. Auf 2000 Pixel verkleinert sind es meist unter 1 MB, und in dieselbe Größengrenze des Webhosters passen achtmal so viele Bilder.
  • Sagt der Dateiname etwas? Aus „Kinderschminken am Zelt.jpg“ macht die Galerie die Bildunterschrift „Kinderschminken am Zelt“. Namen wie „IMG_4711“ erkennt sie als Kameranummer und lässt die Beschreibung leer.
  • Ist die Auswahl schon getroffen? Verwackelte und doppelte Aufnahmen gehören vor dem Hochladen aussortiert. In der Galerie entfernen Sie jedes Bild einzeln mit Rückfrage, eine Sammelauswahl zum Löschen gibt es nicht.

Wie viele Fotos passen in einen Durchgang?

Drei Werte Ihres Webhosters begrenzen jeden Durchgang: die Größe je Datei, die Größe der gesamten Anfrage und die Zahl der Dateien. Der kleinste Wert gewinnt. In PHP heißen sie upload_max_filesize, post_max_size und max_file_uploads. Ab Werk erlaubt PHP nur 20 Dateien je Vorgang, viele Webhoster setzen alle drei Werte höher. Für die Rechnung nehmen wir einen Beispieltarif an, der 20 MB je Bild, 64 MB je Vorgang und 30 Dateien auf einmal erlaubt:

Ihre FotosGröße je BildBilder je DurchgangWas bremst
Spiegelreflex, unbearbeitetetwa 12 MB5die 64 MB je Vorgang
Handy, unbearbeitetetwa 4,2 MB15die 64 MB je Vorgang
auf 2000 Pixel verkleinertetwa 0,7 MB30die Anzahl von 30 Dateien

Ganz ausreizen lässt sich die Grenze je Vorgang nie, denn die Anfrage enthält außer den Bildern noch Formulardaten. Bei Handyfotos von genau 4 MB wären 16 Stück rechnerisch 64 MB und damit schon zu viel. Planen Sie deshalb mit etwas Luft. Die Rechnung zeigt auch, wo sich Arbeit lohnt. Wer seine 180 Vereinsfotos unbearbeitet vom Handy hochlädt, braucht zwölf Durchgänge. Verkleinert sind es sechs. Ein Panoramabild mit 25 MB kommt bei diesem Tarif überhaupt nicht durch, egal wie wenig andere Bilder dabei sind. Ihre eigenen Werte müssen Sie nicht im Kundenmenü suchen, die Galerie nennt sie direkt unter der Auswahlfläche.

Typische Fehler und woran Sie sie erkennen

Die meisten Pannen sehen dramatischer aus, als sie sind. Wichtig ist, die Meldung genau zu lesen, denn sie verrät, welche Grenze gegriffen hat.

Steht da „Es wurde nichts hochgeladen“, war die Anfrage als Ganzes zu schwer. PHP verwirft in diesem Fall alles, auch die kleinen Bilder im Stapel. Wählen Sie die Hälfte aus und versuchen Sie es erneut. Erscheint dagegen nur bei einzelnen Dateien der Zusatz „ist zu groß“, kamen alle anderen an, und Sie müssen nur diese Fotos verkleinern. Tauchen nach einem Durchgang plötzlich Namen wie festzelt-2.jpg auf, haben Sie einen Teil des Stapels doppelt geschickt, etwa nach dem Zurück-Knopf. Die Galerie überschreibt nichts, sondern legt eine zweite Datei an. Diese Doppel löschen Sie unter „Bilder verwalten“.

Bricht die Verbindung im WLAN ab, meldet die Galerie bei den betroffenen Fotos, dass sie nur unvollständig übertragen wurden. Hier hilft weniger auf einmal oder ein Kabel. Und wer mehr Dateien markiert, als der Webhoster annimmt, bekommt schon vor dem Absenden einen Hinweis. Ohne JavaScript würde PHP die überzähligen Dateien stillschweigend fallen lassen, deshalb erinnert die Ergebnisseite in diesem Fall daran, die übrigen in einem zweiten Durchgang nachzuschieben.

Massen-Upload im Bildergalerie-Script: zwei Wege

Das Bildergalerie-Script kennt zwei Wege, viele Bilder auf einmal in eine Kategorie zu bringen. Welcher passt, hängt vor allem von der Menge ab.

MerkmalMehrfach-UploadFTP-Import
WoMenüpunkt „Bilder hochladen“„Bilder verwalten“, Abschnitt „Viele Bilder per FTP übernehmen“
Grenzedie Werte des Webhosters je Bild, je Vorgang und Anzahlhöchstens 100 Bilder oder etwa 20 Sekunden je Klick
Gut füreinige Dutzend BilderHunderte Bilder
Reihenfolgewie die Dateien ankommennach Dateinamen, „bild-2“ vor „bild-10“
Hauptverzeichnismöglichnicht möglich, nur Kategorien

Beim Mehrfach-Upload klicken Sie auf die Fläche „Bilder auswählen / oder hierher ziehen“ oder ziehen die Fotos aus dem Dateimanager darauf. Die Seite listet die Auswahl mit Dateigrößen auf, markiert zu große Dateien und nennt darunter die Grenzen Ihres Webhosters, zum Beispiel „höchstens 20 MB je Bild, 64 MB je Vorgang und 30 Bilder auf einmal“. Nach dem Klick auf „Bilder hochladen“ meldet die Ergebnisseite etwa „4 Bilder wurden hochgeladen.“ und zeigt jedes neue Bild mit einem Feld für die Beschreibung. Dort tragen Sie die Texte ein und speichern alle mit einem Klick auf „Beschreibungen speichern“. Vorschaubild und große Ansicht sind zu diesem Zeitpunkt schon fertig.

Praxisfall: 340 Fotos vom Sommerfest

Angenommen, Sie wollen 340 Fotos in die Kategorie „Sommerfest“ stellen, deren Ordner auf dem Server bilder/sommerfest/ heißt. Die Bilder sind schon auf 2000 Pixel verkleinert und wiegen je etwa 0,7 MB. Mit dem Mehrfach-Upload wären das im Beispieltarif mit 30 Bildern je Vorgang zwölf Durchgänge, jeder mit neuer Auswahl und eigener Ergebnisseite. Schneller geht es so:

  1. Alle 340 Dateien mit dem FTP-Programm direkt in bilder/sommerfest/ laden, ohne Unterordner.
  2. In der Verwaltung „Bilder verwalten“ öffnen, die Kategorie wählen und auf „Kategorie anzeigen“ klicken.
  3. Auf „Per FTP hochgeladene Bilder übernehmen“ klicken. Die Galerie übernimmt bis zu 100 Bilder und meldet, wie viele noch warten.
  4. Erneut klicken, bis keine Dateien mehr warten. Bei 340 Bildern sind das mindestens vier Klicks insgesamt (100, 100, 100, 40), mehr, wenn große Fotos die 20 Sekunden ausschöpfen.

Schneller wird dabei nicht die Übertragung selbst. Die 340 Dateien sind zusammen rund 238 MB groß, und die brauchen bei einer Leitung mit 10 Mbit/s im Upload auf beiden Wegen gut drei Minuten. Der Unterschied liegt darin, wer die Daten transportiert und wie oft Sie eingreifen müssen. Beim Mehrfach-Upload trägt der Browser jeden Stapel einzeln durch die Grenzen des Webhosters. Beim FTP-Import schiebt das FTP-Programm alle Dateien in einem Rutsch hoch, und die Galerie muss sie danach nur noch einsortieren. Das Diagramm stellt beide Wege für die 340 Fotos nebeneinander:

Animiertes Vergleichsdiagramm: 340 verkleinerte Fotos brauchen beim Mehrfach-Upload im Beispieltarif mit 30 Bildern je Vorgang zwölf Durchgänge, beim FTP-Import nach der Übertragung vier Klicks mit 100, 100, 100 und 40 Bildern
Gleiche Datenmenge, anderer Weg: Der FTP-Import umgeht die Upload-Grenzen des Webhosters und braucht für 340 Fotos nur vier Klicks.

Beide Wege bringen die Dateinamen in Form: Aus „Kürbisse vor der Scheune.jpg“ wird kuerbisse-vor-der-scheune.jpg. Gibt es einen Namen in der Kategorie schon, heißt das neue Bild name-2.jpg, es wird also nichts überschrieben. Steht die Einstellung „Dateiname als Beschreibung“ auf „Ja“, was der Standard ist, erhält jedes Bild gleich eine Beschreibung aus seinem ursprünglichen Namen. Da die Galerie Bilder in der Reihenfolge zeigt, in der sie eingetragen wurden, und sich diese später nicht ändern lässt, ist der FTP-Import auch der Weg für eine feste Abfolge: Kameranamen wie IMG_0001.jpg bis IMG_0340.jpg landen in Aufnahmereihenfolge in der Galerie. Beide Wege können Sie mit einem Ordner voller Testfotos ausprobieren, wenn Sie das Bildergalerie-Script kostenlos herunterladen.

Häufige Fragen

Diese Fragen kommen bei großen Sammlungen immer wieder, meist rund um Grenzen und Dateigröße.

Warum bricht mein Massen-Upload mittendrin ab?

Lesen Sie zuerst die Meldung. „Es wurde nichts hochgeladen“ bedeutet, dass der ganze Stapel die Grenze post_max_size überschritten hat. Wird nur ein einzelnes Foto als zu groß genannt, war upload_max_filesize der Grund. Endet der Vorgang mit einer leeren Seite, hat meist der Server die Anfrage abgebrochen, etwa weil seine Laufzeitgrenze erreicht war oder eine Schutzregel wie mod_security den großen Stapel abgewiesen hat. Am Arbeitsspeicher liegt es selten: Reicht er für ein Foto nicht, bleibt das Bild trotzdem in der Galerie, und nur das Vorschaubild folgt später. In allen drei Fällen hilft ein kleinerer Stapel, im letzten zusätzlich ein Blick ins Fehlerprotokoll des Webhosters.

Wie viele Bilder kann ich auf einmal hochladen?

Beim Mehrfach-Upload so viele, wie die drei PHP-Werte Ihres Webhosters zulassen. Die Galerie nennt sie unter der Auswahlfläche, etwa „30 Bilder auf einmal“. Beim FTP-Import gibt es keine Obergrenze für den Ordner, die Galerie übernimmt die Dateien in Portionen von höchstens 100 je Klick.

Ich habe Bilder per FTP hochgeladen, sie erscheinen aber nicht in der Galerie. Was fehlt?

Per FTP kopierte Bilder kennt die Datenbank noch nicht. Öffnen Sie „Bilder verwalten“, wählen Sie die Kategorie und klicken Sie auf „Per FTP hochgeladene Bilder übernehmen“. Meldet die Seite „Keine neuen Bilder gefunden.“, liegen die Dateien meist im falschen Ordner. Welcher Ordner zur Kategorie gehört, steht auf der Seite unter „Ordner auf dem Server“.

Welche Dateiformate nimmt die Galerie beim Massen-Upload an?

JPEG, PNG und GIF. Die Galerie schaut dabei in die Datei hinein, eine umbenannte Endung hilft also nicht. Ein JPEG mit der Endung .png speichert sie als .jpg, eine WebP-Datei mit der Endung .jpg lehnt sie ab. HEIC vom iPhone, WebP, AVIF, BMP und TIFF wandeln Sie vorher mit einem Bildprogramm in JPEG um.

Verwandte Themen

Weiter helfen Beiträge zu Dateigröße, Server-Grenzen und dem Weg, auf dem die Bilder überhaupt auf den Server gelangen.