Hallo,
ich bin monentan ein wenig am verzweifeln. Ich möchte über php ein paar Dateien auf meine Website uploaden. Wenn die hochzuladene Datei größer ist als maximal erlaubt kommt bei mir bei viel zu großen Dateien leider keine Fehlermeldung obwohl ein Maximalwert sowohl im
html-Formular ein Feld mit MAX_FILE_SIZE existiert und ich selber nochmals Abfrage.
Momentan sieht das alles so aus:
Delphi-Quellcode:
//das Formular
<form enctype="multipart/form-data" action="index.php" method="post" name="uploadform">
<input type="hidden" name="MAX_FILE_SIZE" value="2097152">
<input class="inputupload" type="file" name="userfile">
<input class="inputbutton" type="submit" name="upload" value="uploaden">
</form>
//die index.php
if(isset($_POST["upload"]))
{ //$uploaddir ist gegeben
if(move_uploaded_file($_FILES["userfile"]["tmp_name"], $uploaddir.$_FILES["userfile"]["name"]))
{ $error = "Die Datei ".$_FILES["userfile"]["name"]." wurde erfolgreich hochgeladen.
";
}
else if(($_FILES["userfile"]["size"] > 2097152) || ($_POST["MAX_FILE_SIZE"] > 2097152))
{ $error = "Die Datei ".$_FILES["userfile"]["name"]." überschreitet den Maximalwert!
";
}
else if($_FILES["userfile"]["error"] == UPLOAD_ERR_PARTIAL)
{ $error = "Die Datei ".$_FILES["userfile"]["name"]." wurde nur teilweise hochgeladen!
";
}
else if($_FILES["userfile"]["error"] == UPLOAD_ERR_NO_FILE)
{ $error = "Es wurde keine Datei zum Hochladen angegeben!
";
}
}
Wenn die Datei größer als 2MB ist, soll ein Fehler ausgegeben und die Datei gelöscht werden. Ist die Datei knapp über 2MB, wird ein Fehler ausgegeben, ist sie viel größer (etwa 10 MB) passiert nichts. Woran liegt das und wie kann ich das ändern?
Ich danke schon im vorraus
Gruß
Mazel