如何限制上传文件的大小和类型?

你好请帮我看一下,如何限制上传文件的大小,和类型?用JS或是ASP程序都可以,请帮一下,如果可以帮注一下!<formname="form"method="post"act... 你好请帮我看一下,如何限制上传文件的大小,和类型?
用JS或是ASP程序都可以,请帮一下,如果可以帮注一下!

<form name="form" method="post" action="Per_Addons_PhotoUp.asp" enctype="multipart/form-data" >
<tr>
<td>请上传您的照片:</td>
</tr>
<tr>
<td> <input type="hidden" name="filepath" value="../Uploadfiles/PersonFile">
<input type="hidden" name="act" value="upload">
<input name="filename" style="font-family: 宋体; font-size: 12px" type="file" size="38">
</td>
</tr>
<tr>
<td> <input type="button" name="Submit22" value="删除照片" onClick="location.href='?action=delphoto';">
<% If PhotoKeep = 0 Then %>
<input type="button" name="Submit2" value="屏蔽照片" onClick="location.href='?action=keep&keepid=1';">
<% Else %>
<input type="button" name="Submit2" value="恢复照片" onClick="location.href='?action=keep&keepid=0';">
<% End if %>
<input name="Send2" style="font-family: 宋体; font-size: 12px" type="submit" value="上传照片">
</td>
</tr>
</form>
展开
 我来答
百度网友baf3962
推荐于2016-11-17 · TA获得超过667个赞
知道小有建树答主
回答量:204
采纳率:100%
帮助的人:133万
展开全部
有两种方式,
1、用fileupload控件在后台判断
FileUpload1.FileContent.Length判断大小,
System.IO.Path.GetExtension(FileUpload1.FileName)获取文件后缀
2、用jquery上传控件,可以直接判断类型和大小
另外js也可以在前台判断文件类型,但不能获取文件大小,需要引用插件
追问
1、用fileupload控件在后台判断
FileUpload1.FileContent.Length判断大小,
System.IO.Path.GetExtension(FileUpload1.FileName)获取文件后缀

代码怎么写?放在什么位置,麻烦讲一下!等你哦
追答
fileupload是服务器控件,建议你还是用jquery试试,fileupload这样写
string strPostedFileName = FileUpload1.PostedFile.FileName;
string strExtn = System.IO.Path.GetExtension(FileUpload1.FileName).ToLower();
if (FileUpload1.FileContent.Length > 1024*1024)
{
Response.Write("alert('文件大于1M,请重新上传');");
return;
}

if (strExtn != ".xls")
{
Response.Write("alert('请上传Excel文件!');");
return;
}
huiyangzhuang
2012-12-27 · TA获得超过435个赞
知道小有建树答主
回答量:433
采纳率:0%
帮助的人:251万
展开全部
你好,请参考这里:
一款利用asp文件上传组件把文件上传到服务器之前进行判断文件大小否超过指定大小了,本实例讲的是upload_5xsoft文件上传组件哦,file.filesize>1000000就可以限制文件为多少k。
dim upload,file,formname,formpath,icount,filename,fileext
set upload=new upload_5xsoft '建立上传对象
formpath="download/" '在目录后加(/)
if right(formpath,1)<>"/" then formpath=formpath&"/"
for each formname in upload.file '列出所有上传了的文件
set file=upload.file(formname) '生成一个文件对象
if file.filesize>1000000 then
message=1
else '如果 filesize <20000 说明有文件数据
fileext=lcase(right(file.filename,4))
if fileext<>".exe" and fileext<>".zip" and fileext<>".rar" and fileext<>".mxp" then
message=2
else
randomize
rannum=int(90000*rnd)+10000
filename=formpath& "lemongtree_" & year(now)&month(now)&day(now)&hour(now)&minute(now)&second(now)&rannum&fileext
file.saveas server.mappath(filename) '保存文件
if fileext=".zip" then
uploadtype = "zip"
elseif fileext=".rar" then
uploadtype = "rar"
elseif fileext=".mxp" then
uploadtype = "mxp"
elseif fileext=".exe" then
uploadtype = "exe"
end if
uploadchar = filename
size = clng(file.filesize)/1000
message=3
end if
end if
next
%>
<% if message=1 then%>
<html>
<head>
<title>大小超标</title>
<meta http-equiv="content-type" content="text/html; charset=gb2312">
<script language=网页特效>
function error_size()
{
alert("文件大小超过1000kb,请重新选择。");
window.location="upload.asp";
}
</script>
</head>
<body bgcolor="#f2f2f2" leftmargin="0" topmargin="0" onload="error_size()">
</body>
</html>
<% elseif message=2 then%>
<html>
<head>
<title>类型不匹配</title>
<meta http-equiv="content-type" content="text/html; charset=gb2312">
<script language=javascript>
function error_type()
{
alert("只能上传 zip / rar / exe /mxp 文件n请选择正确的文件类型!");
window.location="upload.asp";
}
</script>
</head>
<body bgcolor="#f2f2f2" leftmargin="0" topmargin="0" onload="error_type()">
</body>
</html>
<% elseif message=3 then%>
<html>
<head>
<title>上传成功</title>
<meta http-equiv="content-type" content="text/html; charset=gb2312">
<script language=javascript>
function image_success()
{
alert("文件上传成功!");
parent.form1.url1.value="<%=uploadchar %>"
parent.form1.size.value="<%=size%>k"
window.location="upload.asp";
}
</script>
</head>
<body bgcolor="#f2f2f2" leftmargin="0" topmargin="0" onload="image_success()">
</body>
</html>
<% end if %>
<%
set file=nothing
set upload=nothing ''删除此对象
%>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
landiao_01
2012-12-27
知道答主
回答量:4
采纳率:0%
帮助的人:3.1万
展开全部
选择文件后,先获取到文件,可以得到文件类型和大小属性
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友7fd097051
2012-12-27
知道答主
回答量:34
采纳率:0%
帮助的人:12.7万
展开全部
上传控件有可以看大小的属性和类型的属性。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式