Validieren Sie einzelne Dateien beim Hochladen mehrerer Dateien, bevor Sie sie auf den Server hochladen

8

Ich habe ein Formular mit 3 separaten Dateieingabefeldern. Ich kann anscheinend keine Möglichkeit finden, ihre MIME-Typen einzeln zu validieren, bevor sie auf den Server hochgeladen werden. (Die ersten 2 sollen nur MP3-Dateien erlauben, während die letzten nur JPEG-Dateien zulassen sollen.)

Wie kann ich das tun, oder ist es am besten, den MIME-Typ nach dem Hochladen der Datei zu überprüfen, ihn entweder zu behalten oder zu löschen und eine Fehlermeldung zurückzuliefern?

Hier ist mein Code:

%Vor%

und das ist upload.php

%Vor%     
user3817799 06.07.2015, 00:56
quelle

2 Antworten

0

Ich denke, Sie können die Validierung auf der Client-Seite verwenden, um das Erlebnis flüssiger zu gestalten. Wie Mario schon sagte, können Sie so etwas nur für MP3-Dateien verwenden:

%Vor%

Da Sie den Benutzerdaten jedoch nicht vertrauen können, müssen Sie auch die serverseitige Validierung hinzufügen. Zum Beispiel:

%Vor%

Getestet den obigen Code und es scheint für mich zu funktionieren.

Anmerkungen:

Wenn Sie die Anzahl der hochgeladenen Dateien bereits kennen, verwenden Sie count nicht, da dies zu einem Risiko führen kann. Wenn die Anzahl der hochgeladenen Dateien gleichzeitig variabel sein soll, stellen Sie das count Ergebnis sicher überschreitet nicht den Maximalwert. Verwenden Sie auch count außerhalb der Schleife, so dass es nur einmal berechnet wird.

es gibt andere strengere Möglichkeiten, Dateitypen zu überprüfen, aber das, was ich jetzt habe.

hoffe, das hilft und gibt Feedback, wenn ich in irgendeinem wie ungerecht behandelt.

    
Mohamed abd almohsin 07.07.2015 09:12
quelle
0

Das geht nicht, weil die Daten erst nach dem Upload verfügbar sind. Sie können versuchen, dem Browser (falls möglich) mitzuteilen, dass nur bestimmte MIME-Typen gesendet werden sollen:

%Vor%     
Markus Zeller 06.01.2017 16:39
quelle