2016-05-13 12 views
-1

Nicht sicher, was hier falsch ist. Dies ist meine Upload-Datei und es funktioniert gut für JPEG-und PNG-Dateien, aber aus einem mir unbekannten Grund, wenn ich eine PDF-Datei wählen, gibt es mir den ungültigen Dateityp Fehler. Ich habe viele verschiedene PDFs in verschiedenen Größen ausprobiert und bekomme immer den gleichen Fehler. Es muss etwas geben, was ich gerade nicht sehe.Datei-Upload funktioniert nicht mit pdf

if (isset($_POST['uspid'])) { 
$spid =mysqli_real_escape_string($mysqli, $_POST['uspid']); 
} 
$udir= "uploads/".$spid."/"; 

if(!is_dir($udir)){ 

mkdir("uploads/".$spid, 0777); 
} 

$ufile = $udir . basename($_FILES['fileToUpload']['name']); 
$allexts = array("jpg", "jpeg", "gif", "png", "pdf"); 
$ext = end(explode(".", $_FILES["fileToUpload"]["name"])); 
if ((($_FILES["fileToUpload"]["type"] == "image/gif") 
|| ($_FILES["fileToUpload"]["type"] == "image/jpeg") 
|| ($_FILES["fileToUpload"]["type"] == "image/pdf") 
|| ($_FILES["fileToUpload"]["type"] == "image/pjpeg") 
|| ($_FILES["fileToUpload"]["type"] == "image/png")) 
&& ($_FILES["fileToUpload"]["size"] < 5000000) 
&& in_array($ext, $allexts)){ 
if (move_uploaded_file($_FILES['fileToUpload']['tmp_name'], $ufile)) { 
    echo "File upload was successful."; 
} else { 
    echo "An error has occured. Please try again."; 
} 
} else { 
echo "Invalid file type. Please try again."; 
} 

Der obere Abschnitt des Codes ist einfach die Datei im richtigen Verzeichnis zu setzen und alles gut funktioniert, ist das einzige Problem, mit pdf-Dateien.

+2

Der Pantomime-Typ für pdf ist Anwendung/pdf – vascowhite

Antwort

1

Für pdf wird der Dateityp 'application/pdf' sein. Verwenden Sie die folgende Bedingung

($_FILES["fileToUpload"]["type"] == "application/pdf") 
Verwandte Themen