当前位置:首页 » 网站技术 » ASP

6行代码实现ASP无组件上传

...

目前有很多无组件上传类,我大概看了一下,大多写的相当复杂,有的居然还只能传文本,最关键的是没有10行代码以下的:),我花了一个晚上时间研究了一下ADODB.Stream,并且用了6行代码实现了无组件上传:

upload.asp 文件代码
<%
strFileName = Request.QueryString("fn")
Set objStream = Server.CreateObject("ADODB.Stream")
objStream.Type = 1 'adTypeBinary 二进制方式
objStream.Open
objStream.LoadFromFile strFileName
objStream.SaveToFile Server.MapPath("zslogo.gif"),2
%>

使用方法

在浏览器里面输入:

http://xxx/upload.asp?fn=c:\上传文件\123.gif

其中xxx为你的网站域名地址,比如:www.zhisi.net

执行完后你会看到你的目录下面多了一个zslogo.gif,就是你刚才上传的文件拉!

根据ASP无组件上传原理,我们把上面的代码扩展为以下代码:

upload.asp 文件代码
<%
Function GetFileName(ByVal fn)
If fn<>"" Then GetFileName=mid(fn,InStrRev(fn,"\")+1) Else GetFileName=""
Endfunction

strFileName = Request.Form("file1")
Set objStream = Server.CreateObject("ADODB.Stream")
objStream.Type = 1 ' adTypeBinary
objStream.Open
objStream.LoadFromFile strFileName
objStream.SaveToFile Server.MapPath(GetFileName(strFileName)),2
objStream.Close
%>

upload.htm 文件代码
<form name="upform" action="upload.asp" method="post" enctype="multipart/form-data">
<input type="file" name="file1" style="width:400px;" value="" />
<input type="submit" name="submit" value="上传文件" />
</form>

继续阅读
ADODB.Stream对象参考文档及使用实例
发表评论

昵称:
最新评论
暂时没有评论!