8.1 文件上传技术

8.1 文件上传技术
2011年04月23日
  文件上传技术
  (文件和文件夹的处理,fso,文件上传,邮件发送技术)
  一、普通表单上传技术
  **注释:这种技术是利用html语言结合asp技术和vbscript脚本所实现的简单代码控制,使用简单,功能有限。
  -------具体是使用form表单对象中的文件域来实现的。
  表单使用文件域后,必须设置一个特殊的属性,具体为enctype="multipart/form-data" ,示例如下:
  
  
  例1:使用表单上传技术制作一个上传功能。
  
  
  上传">
  
  说明:这里的上传只是给了用户选择文件的权利,因此上传的起始点和终点是固定的,也就是本地客户机本地目录到服务器存放此类文件指定目录。
  二、无组件上传技术
  *补充知识:
  在目前的网络模型中(主要是osi七层模型和tcp/ip四层模型),基于http协议的上传机制有三种,分别是WebDAV,PUT,RFC1867.
  WebDAV和PUT都可以在web应用中提供文件上传应用程序服务,但因为灵活性很差,已经很少有人使用,而RFC1867既保留了程序的高效性,又具有足够的灵活性,已经成为文件上传的最好方法(安全快速),是目前最普遍采用的机制。
  **补充2:
  RFC1867的文件上传机制:
  使用ADO stream对象(这是一个数据库和文件相结合的对象,用数据库的方法来解决存储问题,用文件的方法来解决上传等操作问题)的BinaryRead方法将form表单中的数据读出,截取所需的文件数据,用二进制的方式存盘。(另存为)
  **补充3:
  在RFC1867机制的最后一步存盘时,有两种方式,一种是用vb,vc,vfp中提到的二进制文件操作方法,在工程中加入类库,编译成dll文件,最后把该文件在用户计算机上注册使用即可;另一种方式是利用ADO stream对象中提供的二进制本质操作方法来完成,保存语句为 streamOBJ.savetofile (filename,2) ,在该方式中,可以将有关的操作存储在一个类文件中,把此类文件放在ASP站点里面,并调用即可。
  ----->标准化程序方法也称为组件上传机制,类文件包含调用方法也称为无组件上传机制。
  1.该方法需要两个条件,第一个是编写好的类支持文件,另一个是掌握该类文件中对存盘操作的相关属性和方法。
  目前的上传类文件在网上很容易找到,其中一段时间内人气很红的一个类文件叫做“无惧下载类”(“无惧上传”),该文件由很多类支持文件构成,主要的类声明和定义在upfile_class.asp里面,可以用记事本查看源代码。
  2.无惧上传中的常用属性和方法
  iserr:返回错误的数值。-1表示无错,1表示没有上传成功,2表示上传文件过大
  allowext:允许上传的文件类型,根据后缀名来判断,不区分大小写,多个后缀名用“;”号隔开。
  NOallowext:黑名单,和上一个完全相反,格式完全一样
  errmessage:返回错误信息。
  filename:文件名称
  fileext:返回上传的文件扩展名
  filesize:文件的具体大小,单位是字节。
  Autosave(表单项,上传文件):保存到文件,把上传的内容自动设置一个非重名的文件加以保存。
  savetofile:保存到文件,如果有服务器上有同名文件,自动覆盖。
  例2:无惧上传类的调用代码
  upload.asp
  
  
  
  
  
  
  
  上传成功"
  set upfile=nothing
  %>
  
  
  三、组件上传技术
  1.安装组件 aspupload
  2.程序组成:普通上传表单+处理程序
  处理程序参考代码如下:
  
  
  
  
  
  上传成功!"
  %>
  
  
  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值