当前位置: 首页 > news >正文

风声无组件上传(2.0)修改版参数详解

长期以来,上传文件是ASP的一个难题。第三方组件上传速度快,但是需要在服务器端注册,而且有部分需要附加版权信息或付费使用,对大多数用户是可望不可及的事。网络上流传的一些无组件上传类,质量良莠不齐,在安全性设计上甚至存在一些漏洞,在性能方面,更是让用户望而却步。网标(Net Builder)经过长时间对上传算法的研究优化,开发出可与组件上传相媲美的ASP无组件上传类——风声无组件上传类。经测试,该无组件上传类在性能上明显超过同类ASP无组件上传程序,接近甚至超过一些上传组件,安全性、易用性更优于同类程序。


UpLoadClass对象[对象参考]

  使用UpLoadClass对象可以处理一个HTTP表单上传二进制数据(文件)到服务器,其形式模拟ASP内置对象Request。上传的处理要创建一个UpLoadClass对象实例,可以使用<%Set request2=new UpLoadClass%>

参数属性
MaxSize 每个上传文件的最大字节数
默认值:153600
特征值:0表示文件大小不受限制

FileType 允许上传的文件类型
默认值:"gif/jpg"
特征值:""表示文件类型不受限制(空)   
  
SavePath 文件存放的路径,可以是相对路径
默认值:"" 即当前目录     

AutoSave 设置Open方法处理文件的方式,对其他方法无效
默认值:0
可选值:
  0:取无重复的服务器时间字符串为文件名自动保存文件
  1:取源文件名自动保存文件
  2:不自动保存文件,Open之后请用Save/GetData方法保存文件

方法
Sub Open() 打开对象,打开之前可以重定义对象参数属性MaxSize等
每个实例均需调用的方法。
Function
Save(Item,Name) 保存文件,成功保存返回ture,否则返回false
Item是表单中file元素
Name是保存的文件名,可选值:
  0:自动取无重复的服务器时间字符串为文件名
  1:自动取源文件名
  字符串:自定义的文件名,如"mypic.jpg"
Function Form(Item) 对于其他表单元素:(假设表单元素名为item)
  Form(item)     表单元素对应的Value值
对于file表单元素:(假设表单元素名为item)
  Form(item)     文件上传后的文件名
  Form(item&"_Type") 文件类型,例"image/gif"
  Form(item&"_Name") 原文件名
  Form(item&"_Path") 原文件本地上传路径
  Form(item&"_Size") 文件字节数
  Form(item&"_Ext")  文件扩展名
  Form(item&"_Err")  该文件上传状态
    -1:没有文件上传
    0:正常
    1:文件超过大小
    2:文件类型不正确
    3:文件超过大小,类型不正确
                 4:文件保存失败
对于images类file表单元素还有:(假设表单元素名为item)
  Form(item&"_Width") 图片宽度
  Form(item&"_Height")图片高度

Function GetData(Item) 获取数据流,可用来保存文件到数据库,试图获取非文件数据时返回空值
返回属性(只读)
Version 返回类版本说明
Error 返回当前文件保存状态
-1:对象尚未打开,请先Open打开对象   
0:正常
1:有文件超过大小
2:有文件类型不正确
3:有文件超过大小,类型不正确
4:异常退出

FormItem 保存Post表单中文本域名称的数组,下标从1开始
FileItem 保存Post表单中文件域名称的数组,下标从1开始

相关文章:

  • js获取url参数
  • js显示日期和时间
  • Visual Studio 2008 试用版升级
  • js屏蔽按键
  • 80后出师表
  • Ajax使用POST提交中文乱码问题(转)
  • css网页背景渐变
  • 运行代码,复制代码,保存代码
  • IE6 IE7 IE8 FF浏览器的CSS兼容问题(转)
  • ASP 编程中 20 个非常有用的例子
  • position 绝对定位的问题
  • phpmyadmin建表出错 #1064 - You have an error in your SQL syntax;
  • 一个女程序员的征婚信息
  • :“Failed to access IIS metabase”解决方法
  • 用户***/aspnet登陆失败
  • Date型的使用
  • Docker下部署自己的LNMP工作环境
  • dva中组件的懒加载
  • ES6之路之模块详解
  • Fabric架构演变之路
  • HTTP中GET与POST的区别 99%的错误认识
  • If…else
  • Making An Indicator With Pure CSS
  • PV统计优化设计
  • SegmentFault 2015 Top Rank
  • 它承受着该等级不该有的简单, leetcode 564 寻找最近的回文数
  • 腾讯视频格式如何转换成mp4 将下载的qlv文件转换成mp4的方法
  • 格斗健身潮牌24KiCK获近千万Pre-A轮融资,用户留存高达9个月 ...
  • ​一、什么是射频识别?二、射频识别系统组成及工作原理三、射频识别系统分类四、RFID与物联网​
  • ​总结MySQL 的一些知识点:MySQL 选择数据库​
  • #【QT 5 调试软件后,发布相关:软件生成exe文件 + 文件打包】
  • #etcd#安装时出错
  • #Js篇:单线程模式同步任务异步任务任务队列事件循环setTimeout() setInterval()
  • (10)STL算法之搜索(二) 二分查找
  • (4) PIVOT 和 UPIVOT 的使用
  • (env: Windows,mp,1.06.2308310; lib: 3.2.4) uniapp微信小程序
  • (PHP)设置修改 Apache 文件根目录 (Document Root)(转帖)
  • (TOJ2804)Even? Odd?
  • (八)光盘的挂载与解挂、挂载CentOS镜像、rpm安装软件详细学习笔记
  • (翻译)terry crowley: 写给程序员
  • (原創) 如何將struct塞進vector? (C/C++) (STL)
  • (转)关于pipe()的详细解析
  • .[backups@airmail.cc].faust勒索病毒的最新威胁:如何恢复您的数据?
  • .NET CORE使用Redis分布式锁续命(续期)问题
  • .net FrameWork简介,数组,枚举
  • .NET 除了用 Task 之外,如何自己写一个可以 await 的对象?
  • .Net+SQL Server企业应用性能优化笔记4——精确查找瓶颈
  • .net2005怎么读string形的xml,不是xml文件。
  • .net流程开发平台的一些难点(1)
  • .net使用excel的cells对象没有value方法——学习.net的Excel工作表问题
  • /etc/fstab 只读无法修改的解决办法
  • [ 第一章] JavaScript 简史
  • [ 隧道技术 ] 反弹shell的集中常见方式(二)bash反弹shell
  • [【JSON2WEB】 13 基于REST2SQL 和 Amis 的 SQL 查询分析器
  • [23] GaussianAvatars: Photorealistic Head Avatars with Rigged 3D Gaussians