Sprawdź rozmiar pliku przed przesłaniem
Korzystam z tego javascript, który dostałem stąd i działa idealnie do tego, czego potrzebuję.
var _validFileExtensions = [".jpg", ".jpeg"];
function File_Validator(theForm){
var arrInputs = theForm.getElementsByTagName("input");
for (var i = 0; i < arrInputs.length; i++) {
var oInput = arrInputs[i];
if (oInput.type == "file") {
var sFileName = oInput.value;
var blnValid = false;
for (var j = 0; j < _validFileExtensions.length; j++) {
var sCurExtension = _validFileExtensions[j];
if (sFileName.substr(sFileName.length - sCurExtension.length, sCurExtension.length).toLowerCase() == sCurExtension.toLowerCase()) {
blnValid = true;
break;
}
}
if (!blnValid) {
alert("Invalid image file type!");
return false;
}
}
}
return true;
}
Zastanawiałem się, czy dodatkowo mogę sprawdzić rozmiar pliku i nie powiedzie się, jeśli plik jest większy niż 500kb -> przed naciśnięciem przycisku wysyłania / wysyłania?
EDYTOWAĆ
Po przeanalizowaniu tego, co zasugerował PHPMyCoder, kończę rozwiązywanie go za pomocą tego kodu javascript:
<script language='JavaScript'>
function checkFileSize(inputFile) {
var max = 3 * 512 * 512; // 786MB
if (inputFile.files && inputFile.files[0].size > max) {
alert("File too large."); // Do your thing to handle the error.
inputFile.value = null; // Clear the field.
}
}
</script>
Sprawdza rozmiar pliku i ostrzega użytkownika przed przesłaniem formularza.