Ich habe seit einigen Tagen ein Problem mit einer Leitung.
Hier ist mein Code:
$files = array();
$count = count(array_filter($_FILES['fichier']['name']));
echo $count;
for($i=0;$i<$count;$i++){
array_push($files, $_FILES['fichier']['tmp_name'][$i]);
}
Dieser Code befindet sich in einem Formular, aber wenn ich mein Formular absende, erhalte ich diese Fehlermeldung:
Warnung: array_filter() erwartet, dass Parameter 1 ein Array ist, Null in …
Dieser Teil des Codes funktioniert in der FR-Version, aber als ich versuchte, in der EN-Version zu kopieren/einzufügen, funktioniert es nicht.
Ich habe alles versucht, nichts passiert.
Vielen Dank.
BEARBEITEN :
var_dump(array_filter($_FILES['fichier']['name']));
gib mir das zurück:
NULL
wenn ich versuche, 1 oder viele Dateien hochzuladen.
array_filter($_FILES['fichier']['name'])
gibt eine Zeichenfolge zurück, die den Dateinamen enthält, der unter das Feld hochgeladen wurdefichier
. Sie bearbeiten die Frage, um Ihre Anforderung zu erläutern. Vielleicht können wir Ihnen helfen. Was ist es, dass du das nicht kannst$count
sein?– Romeo Sierra
31. Mai 2018 um 7:48 Uhr
var_dump($_FILES)
– u_mulder
31. Mai 2018 um 7:52 Uhr
$count gibt mir jedes Mal 0 zurück, auch wenn ich 1 oder viele Dateien hochlade. Dieser Teil des Codes funktioniert gut in der FR-Version, ich kann das Problem nicht verstehen.
– Tweakdev
31. Mai 2018 um 7:52 Uhr
@u_mulder var_dump($_FILES) gibt mir zurück: array(0) { } , auch wenn ich zum Beispiel zwei Dateien hochlade
– Tweakdev
31. Mai 2018 um 7:53 Uhr
Also die echtes Problem ist das
$_FILES
leer. Überprüfen Sie Ihr Formular. Haben Sieenctype
Attribut für ein Formular?– u_mulder
31. Mai 2018 um 7:54 Uhr