PHP Handbuch
Zurück | Kapitel 38. Steuerung von Dateiuploads | Weiter

# Upload mehrerer Dateien

Mehrere Dateien können hochgeladen werden, indem Sie verschiedene Namen name für input verwenden.

Es ist ebenfalls möglich, mehrere Dateien simultan hochzuladen, und die Informationen automatisch in Arrays zu erhalten. Um dies zu tun, verwenden Sie in dem HTML Formular die gleiche Array-Sende-Syntax wie bei Auswahllisten mit Mehrfachauswahl und Checkboxen:

> Anmerkung: Die Unterstützung für den Upload von mehreren Dateien wurde in PHP 3.0.10 hinzugefügt.

Beispiel 38-3. Upload mehrerer Dateien
    <form action="file-upload.php" method="post" enctype="multipart/form-data">
      Send these files:<br>
      <input name="userfile[]" type="file"><br>
      <input name="userfile[]" type="file"><br>
      <input type="submit" value="Send files">
    </form>

Wenn das obige Formular übermittelt ist, werden die Arrays $_FILES['userfile'], $_FILES['userfile']['name'] und $_FILES['userfile']['size'] initialisiert (wie auch in $HTTP_POST_FILES vor PHP Version 4.1.0.). Ist register_globals aktiviert, werden auch globale Variablen für die hochgeladenen Dateien initialisiert. Jedes von ihnen ist ein numerisch indiziertes Array mit den entsprechenden Werten für die hochgeladenen Dateien.

Nehmen wir zum Beispiel an, dass die Dateinamen `/home/test/review.html` und `/home/test/xwp.out` übermittelt wurden. In diesem Fall würde $_FILES['userfile']['name'][0] `review.html` enthalten, und $_FILES['userfile']['name'][1] hätte den Wert `xwp.out`. Genauso würde $_FILES['userfile']['size'][0] die Dateigröße von `review.html` enthalten, usw.

$_FILES['userfile']['name'][0], $_FILES['userfile']['tmp_name'][0], $_FILES['userfile']['size'][0] und $_FILES['userfile']['type'][0] sind ebenfalls gesetzt.

Zurück | Zum Anfang | Weiter
Häufige Probleme | Nach oben | PUT-Unterstützung