PHP Dateiupload - ungünstige $_FILES-Struktur
Autor
Flitze
Klicks 93705
Keywords:
Dateiupload in PHP, Dateien über ein Formular hochladen, Dateien ohne FTP-Programm hochladen, Uploadprüfung, PHP Upload Script, $_FILES-Struktur
Klicks 93705
Rating für PHP Dateiupload
8.9 von 10
Bewertungen40
Stand
24.06.2010
8.9 von 10
Bewertungen40
Keywords:
Dateiupload in PHP, Dateien über ein Formular hochladen, Dateien ohne FTP-Programm hochladen, Uploadprüfung, PHP Upload Script, $_FILES-Struktur
Breadcrumb:
Tutorials » PHP Dateiupload » PHP Dateiupload - ungünstige $_FILES-Struktur

Step 10 – Eine ungünstige $_FILES-Struktur
Wenn ich testweise den Upload-Button betätige (ohne Dateien auszuwählen) und mir das Ergebnis mit var_dump() ausgeben lasse, erhalte ich folgende Ausgabe:
Code:
array(1) {
["Datei"]=>
array(5) {
["name"]=>
array(5) {
[0]=>
string(0) ""
[1]=>
string(0) ""
[2]=>
string(0) ""
[3]=>
string(0) ""
[4]=>
string(0) ""
}
["type"]=>
array(5) {
[0]=>
string(0) ""
[1]=>
string(0) ""
[2]=>
string(0) ""
[3]=>
string(0) ""
[4]=>
string(0) ""
}
["tmp_name"]=>
array(5) {
[0]=>
string(0) ""
[1]=>
string(0) ""
[2]=>
string(0) ""
[3]=>
string(0) ""
[4]=>
string(0) ""
}
["error"]=>
array(5) {
[0]=>
int(4)
[1]=>
int(4)
[2]=>
int(4)
[3]=>
int(4)
[4]=>
int(4)
}
["size"]=>
array(5) {
[0]=>
int(0)
[1]=>
int(0)
[2]=>
int(0)
[3]=>
int(0)
[4]=>
int(0)
}
}
}Das ist insofern ungünstig, da wir jedes Bild einzeln testen wollen/müssen, um eine spezifische Fehlermeldung erstellen zu können. Deshalb setzen wir uns dieses Array unseren Zwecken gemäß zusammen:
PHP:
<?php
// ...
// Falls der Benutzer auf "Upload" gedrückt hat,
// werden die Dateien überprüft
if(isset($_POST['submit']) AND $_POST['submit']=='Upload'){
// jede Datei einzeln testen
for($i=0; $i<5; $i++){
$myFILE['name'] = $_FILES['Datei']['name'][$i];
$myFILE['type'] = $_FILES['Datei']['type'][$i];
$myFILE['tmp_name'] = $_FILES['Datei']['tmp_name'][$i];
$myFILE['error'] = $_FILES['Datei']['error'][$i];
$myFILE['size'] = $_FILES['Datei']['size'][$i];
// ...
?>
Durch diese Zusammenstellung des Arrays können wir wieder unsere checkUpload-Funktion benutzen und zwar für jede Datei einzeln.
Zurück zur vorigen Seite:
PHP Dateiupload - Mehrere Uploadfelder definieren Weiter zur nächsten Seite:
PHP Dateiupload - Uploadskript für mehrere Dateien
Suchmaschinenoptimierung (SEO - Search Engine Optimization)

