我应该像这样循环使用文件上传,
<form action="upload.php" method="post" enctype="multipart/form-data" name="form1" id="form1"onsubmit="return(validate());">
<?php for($i=0;$i<3;$i++)?>
<?php {?>
Select file:
<input name="ufile[]" type="file" id="file<?=$i;?>" size="50" />
<?php }?>
<input type="hidden" name="ivalue" value="3" id="someVar"/>
<input type="submit" name="Submit" value="Upload" />
</form>
我已经对文件上传进行了一些验证。喜欢,
<script type="text/javascript">
function validate()
{
var x=document.getElementById("someVar").value;
for(i=0;i<x;i++)
{
var filename=document.getElementById('file'+i).value;
var extension=filename.substr(filename.lastIndexOf('.')+1).toLowerCase();
if(filename)
{
if(extension=='png' || extension=='gif' || extension=='jpg' ||extension=='jpeg') {
return true;
} else {
alert('Allowed Extensions are "png","gif" and "jpg" !');
return false;
}
return true;
}
else
{
alert('Select upload files!');
return false;
}
}
}
</script>
但我的脚本只验证第一个文件。(我知道这是由于 id 命名约定)。但是如果用户没有选择任何文件,我需要进行验证。我该怎么做?我的意思是,我怎样才能对 for 循环中的所有文件进行验证?
谢谢!
最佳答案
<script type="text/javascript">
function validate()
{
var x=document.getElementById("someVar").value;
for(i=0;i<x;i++) {
var filename=document.getElementById('file'+i).value;
var extension=filename.substr(filename.lastIndexOf('.')+1).toLowerCase();
if (filename) {
if (extension=='png' || extension=='gif' || extension=='jpg' ||extension=='jpeg') {
} else {
alert('Allowed Extensions are "png","gif" and "jpg" !');
return false;
}
} else {
alert('Select upload files!');
return false;
}
}
return true;
}
</script>
关于php - 文件上传验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11094022/