Я разработал форму для загрузки фотографий участников с помощью php и javascript.
У меня есть PHP-код для проверки формы загрузки на стороне сервера, а также код для проверки формы загрузки на стороне клиента.
Код PHP работает нормально, но код JavaScript отображает предупреждение, когда проверяет размер файла и представление ошибок. Если размер файла превышает 100 КБ, он выдаст предупреждение, но не прекратит загрузку файла.
Код подтверждения JavaScript:
<script language="javascript">
function findSize()
{
var fileInput = document.getElementById("fileup");
try{
var fsize=fileInput.files[0].size;
var fsizekb1=fsize/1024;
if(fsizekb1>100)
{
//alert(fileInput.files[0].size+"vv"); // Size returned in bytes.
alert("your file is bigger than 100 KB and size of your file is "+fsizekb1.toFixed(2)+" KB");
return false;
}
}catch(e){
var objFSO = new ActiveXObject("Scripting.FileSystemObject");
var e = objFSO.getFile( fileInput.value);
var fileSize = e.size;
var fsizekb=filesize/1024;
if(fsizekb>100)
{
//alert(fileSize);
alert("your file is bigger than 100 KB and size of your file is "+fsizekb1.toFixed(2)+" KB");
return false;
}
}
return true;
}
function up_control()
{
if(document.forms["frm_up"]["up"].value=='')
{
alert ("please select your photo by Browse");
return false;
}
if(document.forms["frm_up"]["cptch"].value=='')
{
alert ("please write the picture code");
return false;
}
findsize();
return true;
}
</script>
и форма для загрузки:
<form method="post" enctype="multipart/form-data" name="frm_up" onSubmit="return up_control()">
<input id="fileup" style=" margin-right:3%;" type="file" name="up" accept="image/jpeg,image/x-png,.jpg" ><br> <br>
<!--===========start Area==Captcha====================================================================================
=====================================================================================================================
=====================================================================================================================
-->
<img style="" HEIGHT="55px" src="cptch.php?cpf=<?php echo rand(1111,999999999); ?>" id='captchaimg' border="2" > <br>
<label for="message" style="margin-right:1%">write number in above picture:</label><br>
<input style="width: 8em" id="cptch" name="cptch" type="text" autocomplete="off" ><br>
<Label style="margin-right:1%;" id="captex_chng_lbl">Can't Read the picture? <br id="br_cap_chng"><a href='javascript: refreshCaptcha();' style="color:#909;" id="rmz2" class="captex_chng">Change</a></label><br><br>
<script language='JavaScript' type='text/javascript'>
function refreshCaptcha()
{
var img = document.images['captchaimg'];
img.src = img.src.substring(0,img.src.lastIndexOf("?"))+"?cpf="+Math.random()*1000;
}
</script>
<!--===========END Area==Capcha======================================================================================
=====================================================================================================================
=====================================================================================================================
-->
<input type="hidden" name="upl" value="1">
<input style=" margin-right:3% !important;" type="submit" value=" Send to see " > <input type="button" style="background-color:#FF8080; margin-right:5%;" value=" cancel " onClick="document.location='index.php?c=regm'" ><br><br>
</form>
Почему код JavaScript не работает должным образом при проверке размера функции изображения и не препятствует загрузке файла после ошибки отображения (оповещения)?