asp 文件上传(ASPUpload组件上传)
要实现该功能,就要利用一些特制的文件上传组件。文件上传组件网页非常多,这里介绍国际上非常有名的ASPUpload组件
1 下载和安装ASPUpload
要实现该功能,就要利用一些特制的文件上传组件。文件上传组件网页非常多,这里介绍国际上非常有名的ASPUpload组件,它的下载网址是:
http://www.persits.com/aspupload.exe
组件提供者网址是:
http://www.aspupload.com
注意:首先去掉要存放上传文件的文件夹的只读属性,对于Windows2000和Windows
XP来说,如果安装时采用NTFS文件系统,还需要将该文件夹设置为EveryOne(任何人)可以完全控制。
按照上面的网址下载该组件后,直接双击下载文件,按照提示一步一步安装即可。安装完毕后,将默认生成"c:\Program
Files\Persits Software\AspUpload"文件夹,里面有使用说明和例子。
2. 使用ASPUpload组件上传文件
该组件功能强大,不仅可以上传文件,还可以像普通表单一样上传一些表单元素值,这样就可以给上传的文件加一些说明文字。因为既有上传文件属性,又有上传表单属性,所以比较复杂,这里只介绍最常用的。
上传组件的常用属性如表8-2所示。
表8-2 上传组件的属性
上传组件的常用方法如表8-3所示。
表8-3 上传组件的方法
上传表单元素的属性如表8-5所示。
表8-5 上传表单元素的属性
清单8-3 8-3.asp 上传文件表单
<html>
<head>
<title>
上传一个文件示例</title>
</head>
<body>
<H2
align="center">上传一个文件</H2>
<center>
<form action="8-4.asp"
method="post" enctype="multipart/form-data" >
选择文件:<input type="file"
name="upfile"><br>
文件说明:<input type="text"
name="intro"
size="30"><br>
作者姓名:<input type="text"
name="author"
size="30"><br>
<input type="submit" value=" 确定
">
</form>
</center>
</body>
</html>
清单8-4 8-4.asp 上传文件执行程序
<% Option Explicit
%>
<html>
<head>
<title>上传一个文件示例</title>
</head>
<body>
<H2
align="center">文件已安全上传</H2>
<center>
<%
Dim Upload '声明一个变量
Set Upload =
Server.CreateObject("Persits.Upload.1") '创建一个文件上传组件实例
Upload.SetMaxSize 2*1024*1024,False
'限制文件不超过2M,否则截断
Upload.OverwriteFiles=True 'True表示可以覆盖
Upload.Save
"C:\inetpub\wwwroot\asptemp\chapter8\upload" '上传到指定文件夹
Response.Write "上传文件为:" &
Upload.Files("upfile").Path &
"<BR>"
Response.Write "文件大小为:" &
Upload.Files("upfile").Size &
"字节<BR>"
Response.Write "文件说明为:" &
Upload.Form("intro").value &
"<BR>"
Response.Write "作者姓名为:" &
Upload.Form("author").value &
"<BR>"
%>
</center>
</body>
</html>
程序说明:
1)注意8-3.asp中FORM表单的写法:<form action="8-4.asp"
method="post" enctype="multipart/form-data"
>,这里一定要写成enctype="multipart/form-data"。
2)还要注意,选择文件用的是FORM表单的选择文件元素:<input type="file"
name="upfile">
3)关于限制文件大小,Upload.SetMaxSize 2*1024*1024,False
表示限制文件大小为2MB;False表示如果文件超过2MB,则自动截断为2MB大小;如果改为True,则不自动截断,程序将报错误信息。
4)关于文件可以覆盖,Upload.OverwriteFiles=True表示如果文件名和原有的文件名字相同,则可以覆盖;False表示不可以覆盖,将自动另外起一个名字保存。默认为True。
5)关于文件保存路径,Upload.Save
"C:\inetpub\wwwroot\asptemp\chapter11\upload"
,这里写的物理路径,也可以利用以前学过的Server对象的Mappath方法,此句可以写成:Upload.Save.Server.Mappath("upload")
。这样写,程序移植更方便。
6)还要特别注意的是,用于保存上传文件的文件夹必须是存在的;而且,如果服务器是Windows 2000或Windows
NT操作系统,必须将该文件夹权限设置成所有人可以存取的,否则将无法上传文件。
7)在获取上传文件的属性时,用了Upload.Files("upfile").Path和Upload.Files("upfile").Size,
后面的Path和Size属性不可以省略,否则不清楚到底希望获取文件的什么属性。而获取表单元素时,用了
Upload.Form("intro").value,这时的Value属性是可以省略的。
在上面的例子里,一次只能上传一个文件,如果想一次上传多个文件页很容易,只要像在普通的FORM表单里加多个表单元素一样就可以了,请参考下面具体的例子。
清单8-5 8-5.asp 上传多个文件表单
<html>
<head>
<title>
上传多个文件示例</title>
</head>
<body>
<H2
align="center">上传多个文件</H2>
<center>
<form action="8-6.asp"
method="post" enctype="multipart/form-data" >
选择文件1:<input type="file" name="
upfile1">
文件说明1:<input type=text
name="intro1"
size="30"><BR>
选择文件2:<input type="file"
name="upfile2">
文件说明2:<input type=text
name="intro2"
size="30"><BR>
<input type="submit" value=" 确定
">
</form>
</center>
</body>
</html>
清单8-6 8-6.asp 上传多个文件执行文件
<% Option Explicit
%>
<html>
<head>
<title>
上传多个文件示例</title>
</head>
<body>
<H2
align="center">文件已安全上传</H2>
<center>
<%
Dim Upload
Set Upload = Server.CreateObject("Persits.Upload.1")
Upload.Save Server.Mappath("upload") '上传到指定文件夹
Dim upfile,Item
For Each upfile In Upload.Files
'这里用一个循环写出所有文件的信息
Response.Write upfile.Name & "="
& upfile.Path & " ("
& upfile.Size &
")<BR>"
Next
For Each Item In Upload.Form
'这里用一个循环写出所有表单元素信息
Response.Write Item.Name & "="
& Item.Value &
"<BR>"
Next
%>
</center>
</body>
</html>
程序说明:
在上面的程序中没有像前一个例子一样一个一个写出上传文件和文件说明,而是用了一个For
Each循环,效果是一样的。因为上传后,其实是传上来一个Files集合,一个Form集合。Files集合包括所有上传文件,Form集合包括所有上传表单元素。
asp 文件上传(ASPUpload组件上传)的更多相关文章
- asp 文件上传(无组件上传)
文件1.上传界面文件 upload.htm<html><head><meta http-equiv="Content-Language" conten ...
- AspUpload组件的安装及使用方法介绍
http://soft.huweishen.com/soft/47.html AspUpload对ASP编程人员来说要实现ASP网站文件上传功能它是首选.本文就为大家介绍一下AspUpload组件的安 ...
- asp.net文件上传下载组件
以ASP.NET Core WebAPI 作后端 API ,用 Vue 构建前端页面,用 Axios 从前端访问后端 API ,包括文件的上传和下载. 准备文件上传的API #region 文件上传 ...
- flash文件上传下载组件
以ASP.NET Core WebAPI 作后端 API ,用 Vue 构建前端页面,用 Axios 从前端访问后端 API ,包括文件的上传和下载. 准备文件上传的API #region 文件上传 ...
- chunkupload文件上传断点续传组件(java)
chunkupload简介 chunkupload是一款基于java语言的断点续传组件,针对文件上传,非文件下载,集成方便,使用简单. 从整体上讲,chunkupload会对文件进行切片处理,每个切片 ...
- chunkupload 文件上传断点续传组件(java) - 正式发布
chunkupload简介 chunkupload是一款基于java语言的断点续传组件,针对文件上传,非文件下载,集成方便,使用简单. chunkupload实现如下功能: · 实现断点续传 · ...
- 打造 html5 文件上传组件,实现进度显示及拖拽上传,支持秒传+分片上传+断点续传,兼容IE6+及其它标准浏览器
老早就注册了博客园帐号,昨天才发现,连博客都没开,Github也是一样,深觉惭愧,赶紧潜个水压压惊`(*∩_∩*)′ 言归正传.大概许多人都会用到文件上传的功能,上传的库貌似也不少,比如(jQuery ...
- 使用commons-fileUpload组件上传文件
在近期的一个项目中有用到commons-fileUpload组件进行实现文件上传的功能(由于没用到框架),在使用的过程中有遇到一些问题,经过自己的琢磨也算顺利地将其解决了,在这里做个记录. 一.com ...
- EasyUI 关于IE使用window组件上传文件
有时候IE会对使用window组件上传文件(第二次)不生效,解决方案是: 将该window每次打开的时候,使用: $('#adUploadWindow').window('refresh', 'pan ...
随机推荐
- Ajax-Demo
index.jsp 1 <%@ page language="java" contentType="text/html; charset=UTF-8" p ...
- Android核心组件 Service
Service: 服务 Service 是Activity系统的核心组件之一. 因此需要继承和注册 Service 是内有界面的, 适合在后台长期的执行任务. (如放歌, 检测版本跟新, 下载, 上传 ...
- Android源代码编译——编译
环境准备好了,代码下载完了,据说make一下就可以. 当然也可以配置一下环境变量: 编译初始化,在终端中执行: source build/envsetup.sh 选择编译目标,在终端中执行下面的命令: ...
- [译]Java Thread join示例与详解
Java Thread join示例与详解 Java Thread join方法用来暂停当前线程直到join操作上的线程结束.java中有三个重载的join方法: public final void ...
- AJAX 原理(转摘)
在写这篇文章之前,曾经写过一篇关于AJAX技术的随笔,不过涉及到的方面很窄,对AJAX技术的背景.原理.优缺点等各个方面都很少涉及null.这次写这篇文章的背景是因为公司需要对内部程序员做一个培训.项 ...
- OOP三类继承的区别
OOP继承的区别提纲: 1. 普通类继承,并非一定要重写父类方法.2. 抽象类继承,如果子类也是一个抽象类,并不要求一定重写父类方法.如果子类不是抽象类,则要求子类一定要实现父类中的抽象方法.3. 接 ...
- MySQL的alter的使用
ALTER TABLE 语句用于在已有的表中添加.修改或删除列 1.ADD [COLUMN] column name (column definitions) [FIRST or AFTER colu ...
- Oracle分区表做跨分区查询
问:有一张大表,其中按时间字段(TIME_ID)进行表分区(按季度分区),但是如果业务人员做跨季度的大批量数据的查询时,未能走TIME_ID分区索引,导致全表扫描.此种情况该如何处理? 示例解析: 1 ...
- 内置对象之Cookie
if (!this.IsPostBack) { try { HttpCookie MyCookie = new HttpCookie("MyCookie"); MyCookie.V ...
- Js 处理将时间转换 “年-月-日”
将时间 \/Date(1432828800000+0800)\/" 转换成:“年-月-日” //时间转换function ChangeDateFormat(val) { if (v ...