一、ASPUpload常用属性和方法(本次使用为v3.0.0.5 特别版)
上传文件组件的属性:
上传文件的属性:
上传文件的方法:
将文件上传至服务器分成两种情况:按原有文件名保存和重命名保存,两种保存方法不太一样,下面举两例分别说明,上传表单统一为:
程序代码
<form action="save.asp" method="post" enctype="multipart/form-data" name="form1" id="form1">
text1: <input name="text1" type="text" id="text1" /> <br /> file1: <input name="file1" type="file" id="file1" /> <br /> text2: <input name="text2" type="text" id="text2" /> <br /> file2: <input type="file" name="file2" /> <input type="submit" name="Submit" value="提交" /> <br /> </form> 1.原文件名保存
程序代码
<%
On error resume Next Dim Upload Set Upload = Server.CreateObject("Persits.Upload") Upload.OverwriteFiles = True Upload.SetMaxsize 10*1024*1024,True Upload.save Server.mappath(".") '保存文件,改为count=Upload.save(path)可返回上传文件数量 If err.number=8 Then Response.write "文件大小超过限制!" Response.End() End if '显示信息方法一:根据表单名称 Response.Write("<br/>--------------------------------------方法一------------------------------------<br/>") Response.Write("获取表单值:<br/>") Response.Write("text1:<br/>" & Upload.Form("text1").name & "=" & Upload.Form("text1").value & "<br/>") Response.Write("text2:<br/>" & Upload.Form("text2").name & "=" & Upload.Form("text2").value & "<br/>") Response.Write("<br/>") Response.Write("获取文件信息:<br/>") Response.Write("file1:<br/>" & " 表单名字:" & Upload.Files("file1").name & "<br/>") Response.Write(" 上传路径:" & Upload.Files("file1").path & "<br/>") Response.Write(" 文件名字:" & Upload.Files("file1").filename & "<br/>") Response.Write(" 文件大小:" & Upload.Files("file1").size & "字节<br/>") Response.Write(" 扩展名:" & Upload.Files("file1").Ext & "<br/>") Response.Write("file2:<br/>" & " 表单名字:" & Upload.Files("file2").name & "<br/>") Response.Write(" 上传路径:" & Upload.Files("file2").path & "<br/>") Response.Write(" 文件名字:" & Upload.Files("file2").filename & "<br/>") Response.Write(" 文件大小:" & Upload.Files("file2").size & "字节<br/>") Response.Write(" 扩展名:" & Upload.Files("file2").Ext & "<br/>") '显示信息方法二:使用For each ... in Response.Write("<br/>--------------------------------------方法二------------------------------------<br/>") Response.Write("获取表单值:<br/>") For each MyForm in Upload.Form Response.Write("表单:<br/>" & MyForm.name & "=" & MyForm.value & "<br/>") Next Response.Write("<br/>") Response.Write("获取文件信息:<br/>") For each MyFiles in Upload.Files Response.Write("文件:<br/>" & " 表单名字:" & MyFiles.name & "<br/>") Response.Write(" 上传路径:" & MyFiles.path & "<br/>") Response.Write(" 文件名字:" & MyFiles.filename & "<br/>") Response.Write(" 文件大小:" & MyFiles.size & "字节<br/>") Response.Write(" 扩展名:" & MyFiles.Ext & "<br/>") Next Set Upload = nothing %> 2.重命名保存
程序代码
<%
On error resume Next Dim Upload Set Upload = Server.CreateObject("Persits.Upload") Upload.OverwriteFiles = True Upload.SetMaxsize 10*1024*1024,True Upload.save() '先将文件保存到内存,改为count=Upload.save()可返回上传文件数量 If err.number=8 Then Response.write "文件大小超过限制!" Response.End() End if Dim newname '保存方法一:根据表单名称 'Set file1 = Upload.Files("file1") 'newname = year(now()) & month(now()) & day(now()) & hour(now()) & minute(now()) & second(now()) 'file1.SaveAs Server.MapPath(".") & "/" & newname & file1.Ext 'Set file1 = nothing '保存方法二:使用For each ... in For each MyFiles in Upload.Files newname = year(now()) & month(now()) & day(now()) & hour(now()) & minute(now()) & second(now()) MyFiles.SaveAs Server.MapPath(".") & "/" & newname & MyFiles.Ext Next Set Upload = nothing %> 3.将文件保存至数据库中
程序代码
<%
On error resume Next Dim Upload,Upfile Set Upload = Server.CreateObject("Persits.Upload") Upload.OverwriteFiles = True Upload.SetMaxsize 10*1024*1024,True Upload.save() '先将文件保存到内存,改为count=Upload.save()可返回上传文件数量 Set Upfile = Upload.Files("file1") If err.number=8 Then Response.write "文件大小超过限制!" Response.End() End if Dim strConn,strSql strConn = "Driver={Microsoft Access Driver (*.mdb)};Dbq=" & Server.MapPath("db1.mdb") strSql = "Insert into t7(f_name,f_size,f_file) values('" & Upfile.filename & "','" & Upfile.size & "',?)" 'OLE字段值用?代替 Upfile.ToDatabase strConn,strSql Set Upfile = nothing Set Upload = nothing %> |