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.jzxue.com

执行完后你会看到你的目录下面多了一个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>

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
一、简介 自从接触ASP就开始接触上,看过一些上类,但是总感觉封装的还是不够简单,因此自己尝试写一个能够用最少最简单的代码实现各种上方式的上类。在学校期间就开始写,一点点的完善、优化,到现在的版本,现在的版本能适应各种上方式。上 类的主要的功能如下: 1、自由设置最大上大小、单文件最大上大小 2、自由设置允许上的文件类型 3、可设置文本的编码,以适应各种上环境 4、内置进度条,用户可选择开启和关闭 5、多种错误状态处理 6、多种文件保存方式:原文件名、随机文件名、用户自定义文件名 7、自由选择是否覆盖已存在文件 8、完整保存表单数据,支持同名表单,不支持同名文件域 注意: 1、特别注意Form一定要加上enctype="multipart/form-data"属性,method属性值必须是post,否则上会出错 2、request.form()方法获取数据失效,请使用UpLoad.forms() 3、上前请确认保存文件的文件夹有读写权限,若不可写则会出现"文件无法写入"错误,解决方法 http://dev.mo.cn/show.asp?id=81 二、调用方法 1、无组件类的调用方法: Dim Upload set Upload = new AnUpLoad 2、组件的调用方法: Dim Upload Set Upload = server.CreateObject("Anasp.Anupload") 注意:上属性的设置必须在调用Upload.GetData()之前。 简单调用示例: Dim Upload set Upload=new AnUpLoad 'Set Upload = server.CreateObject("Anasp.Anupload") Upload.SingleSize=1024*1024*1024 '设置单个文件最大上限制,按字节计;默认为不限制 Upload.MaxSize=1024*1024*1024 '设置最大上限制,按字节计;默认为不限制 Upload.Exe="bmp|rar|pdf|jpg|gif" '设置合法扩展名,以|分割 Upload.Charset="gb2312" '设置文本编码,默认为gb2312 Upload.openProcesser=false '禁止进度条功能,如果启用,需配合客户端程序 Upload.GetData() '获取并保存数据,必须调用本方法

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值