❶ 如何限制上传文件的大小和类型
你好,请参考这里:
一款利用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 ''删除此对象
%>
❷ 去除eWebEditor上传文件类型限制和上传大小限制
完美去除eWebEditor上传文件类型限制和上传大小限制的方法
在文件夹 \WebEditor\asp\config.asp 文件中第31行如下:
aStyle(9) = "coolblue|||blue|||coolblue|||uploadfile/|||550|||350|||rar|zip|exe|doc|xls|chm|hlp|pdf|txt|ppt|||swf|||gif|jpg|jpeg|bmp|||rm|mp3|wav|mid|midi|ra|avi|mpg|mpeg|asf|asx|wma|mov|||gif|jpg|jpeg|bmp|||5000|||100|||100|||100|||100|||1|||1|||EDIT|||1|||0|||0|||||||||1|||0|||(Default Style) Cool blue interface, blue tone, standard style, some of the commonly used buttons, standard suitable width for the interface|||1|||en|||0|||500|||300|||0|||Copyright...|||000000|||12|||Verdana||||||0|||jpg|jpeg|||300|||FFFFFF|||1"
程序中调用代码如下:
For i = 1 To Ubound(aStyle)
aStyleConfig = Split(aStyle(i), "|||")
If Lcase(sStyleName) = Lcase(aStyleConfig(0)) Then
bValidStyle = True
Exit For
End If
Next
我使用的是coolblue 样式,所以是上面的那一条记录啦,下面是针对Split出来的数组数据的描述
0=样式名称,
1=按钮图标文件夹,
2=Css样式文件夹,
3=上传文件保存位置,
4=最佳调用宽度,
5=最佳调用高度
文件类型:
6=其他,
7=动画,
8=图像,
9=媒体,
10=远程自动上传
文件大小:
11=其他,
12=动画,
13=图像,
14=媒体,
15=远程自动上传
无用设置:
16=是否显示状态栏,
17=是否在粘贴Word文档的时候提示清理,
18=默认编辑模式
19=路径模式:[0=相对路径,1=绝对路径,2=绝对根路径]
20=上传组件:[0=无组件上传,免费版本只提供无组件上传,如果想使用其他上传方式请与官方联系购买正式版]
21=保存模式:[用于将所上传的文件分目录保存,选项有:年月日目录,年月目录,日目录等,免费版本无此功能!]
23=显示路径
无用设置:
24=是否自动上传远程文件,
25=默认是否显示指导方针,
26=编辑器样式简介,
27=是否允许自动选择语言,
28=默认语言
无用设置:29=,30=,31=,32=,33=,34=,35=,36=,37=,38=,39=,40=,41=,42=
也就说把500改成5000就是大小限制变为5000K,其他类似。
有的eWebEditor里在Config.asp文件也不同,一开始的时候我的是限制在100k的,我就用了替换,把所有100换成400,反正无错,现在可以上传400k的图。
❸ 怎么用php实现文件的上传,要求文件类型为jpg,大小不超过2m,上传的文件存放在u
$_FILES官方文档
你可以看看官方的$_FILES文档,里面有对$_FILES的内容的解释。
想通过PHP来处理文件信息就得通过$_FILES的内容来处理,比如文件类型可以用type来判断,要求文件类型为jpg,那就判断if ($_FILES['file1']['type'] === 'image/jpeg'),这里的file1并不是绝对的,视情况而定。
当然如果你觉得判断类型太麻烦,你也可以直接从name中判断后缀名,自己将文件名分割一下就好了。大小可以用size,默认单位是字节,不超过2M就要除以1024*1024了,可以将字节转换到兆字节。
要将上传的文件放在U目录下,就用move_uploaded_file函数来解决,move_uploaded_file官方文档