有组件上传方式请右键"FyUpload.sct"注册,然后可以使用:
Server.CreateObject("Rimifon.Upload")
创建对象。
无组件上传方式请使用
GetObject("script:" + 组件地址)
创建对象,组件地址为硬盘绝对路径,也可以使用http完整路径。
==============================================
属性和方法说明:
设置页面字符编码:Upload.Charset = "UTF-8" //默认为gb2312编码。
文件大小限制:Upload.MaxSize = 1024 * 512 //设置上传大小不超过 512 kb,参数为零时不限制上传文件大小(默认为 0)。
文件类型限制:Upload.Filter = "rar|zip|txt|gif|jpg|bmp|htm|html|swf|mht"; //(默认值)设置允许上传的文档类型,不限制上传文件类型则使用空值。
获得上传文件的客户端路径:Upload.Field.输入框名称.FilePath
获得上传文件的文件名称:Upload.Field.输入框名称.SourceName
获得上传文件后保存的文件名:Upload.Field.输入框名称.FileName
获得上传文件的MimeType:Upload.Field.输入框名称.FileType
获得上传文件实际大小:Upload.Field.输入框名称.FileSize
获得上传文件的受限信息:Upload.Field.输入框名称.Message
获得表单数据:Upload.Field.输入框名称.Value //如果是文件则返回文件的Unicode编码内容
指定上传缓冲区大小并读取上传数据:Upload.ReadForm(缓冲大小[bytes], 参数二) //默认为全部缓冲,推荐在200k以下(可解决2003不能上传大文件的问题);提供参数二可为上传生成进度条的application数据。
保存文件到指定目录:Upload.SaveFile("保存目录") //默认为当前目录
==============================================
演示:http://www.fengyun.org/Test/NetDisk
普通演示代码如下:
<%@language=javascript%><html><head>
<meta http-equiv="Content-Type" content="text/html;charset=gb2312">
<title>風雲JS上传组件</title><%
var Upload,Info,undefined;
if(Request.ServerVariables("Request_Method") == "POST")
{
//Upload = Server.CreateObject("Rimifon.Upload");
Upload = GetObject("script:http://www.zope.org/Members/Rimifon/FyUpload.sct#Upload");
Upload.MaxSize = 1024 * 512;
Upload.ReadForm(204800);
Upload.SaveFile(".");
var field = new Array;
field.push("允许上传的文档:" + (Upload.Filter?Upload.Filter:"所有文档"));
field.push("单个文件最大值:" + (Upload.MaxSize?(Upload.MaxSize/1024/1024).toFixed(1)+" Mb":"不限文件大小"));
field.push("============================================================");
for(var x in Upload.Field)
{
if(Upload.Field[x].FilePath)
{
field.push(x+":" + (Upload.Field[x].Message?
Upload.Field[x].FilePath+"(" + Upload.Field[x].Message + ")":
"<a target=_blank href=" + Upload.Field[x].FileName + ">" +
Upload.Field[x].FilePath + "</a> (" + Upload.Field[x].FileSize + " bytes)"));
}
else
{
field.push(x+":"+Upload.Field[x].Value);
}
}
Upload.Dispose();
Upload = undefined;
Info = field.join("<br>");
}%></head><body>
<font color="red"><%=Info%></font>
<form method=post enctype="multipart/form-data">
field:<input name=field value=testString><br>
upFile1:<input name="upFile1" type="file"><br>
cnfield:<input name=cnfield value=一中文测试><br>
upFile2:<input name="upFile2" type="file"><br>
otherfield:<input name=otherfield value=dsihf83><br>
<input type="submit"></form></body></html>
请注意:下面的附件中,组件未必是最新的,最新组件的地址是: (文档以utf-8编码保存)
http://www.zope.org/Members/Rimifon/FyUpload.sct
新闻热点
疑难解答