Upload - nur .zip und .rar zulassen

seberix

Mitglied
Hi!

Ich hab mir das PHP-Script von den tutorials geholt und will aber nur .zip und .rar files zulassen.

Hab das Script so verändert wie ich´s in einem Thread hier gelesen hab aber es kommt immer die Fehlermeldung "Es dürfen nur .zip und .rar Dateien hochgeladen werden!"

Warum?

Hier der Code

PHP:
<?php 
$tempname = $_FILES['file']['tmp_name']; 
$name = $_FILES['file']['name'];
$type = $_FILES['file']['type']; 
$size = $_FILES['file']['size'];
if($type != "application/x-rar-compressed" && $type != "application/zip") { 
    $err[] = "Es dürfen nur .zip und .rar Dateien hochgeladen werden."; 
} 
if($size > "100000") { 
    $err[] = "Die Datei welche du hochladen willst, ist zu gross!"; 
}
if(empty($err)) { 
    copy("$tempname", "$name"); 
    echo "Die Datei $name wurde erfolgreich hochgeladen!"; 
} 
else { 
    foreach($err as $error) 
    echo "$error<br>"; 
} 
?>

Danke schon mal für die (hoffentlich kommende) Hilfe ;)
 
Wenn der Mime-Type aus deinem Script nicht mit dem vom Browser übermittelten Mime-Type übereinstimmt, dann wäre es wohl sinnvoll, wenn du den Mime-Type in deinem Script entsprechend änderst.
Ich glaube, ein bisschen Hirn einschalten ist wohl nicht zuviel verlangt.
 
Dein Problem hat auch nichts mit Mime-Typen zu tun, sondern lediglich mit einem einfachen String-Vergleich. Dein Browser schickt dir einen String, und du möchtest überprüfen, ob dieser String einem von dir definierten String entspricht. Da er dass, wider erwarten, anscheinend nicht tut, wäre es doch sehr naheliegend, sich einmal anzuschauen, was du für einen String vom Browser bekommst.
Es tut mir leid, wenn du dich dadurch irgendwie beleidigt fühlst, aber so weit muss man schon selbst deken können, wenn man programmieren will.
 
Zurück