上传表单如下:
|
ASP源代码:
<HTML><BODY><TITLE>文件上传</TITLE><CENTER></CENTER> <% Set Obj = Server.CreateObject("Yousoft.UploadFile") Response.Write "总共上传 " & obj.Count & " 个文件<br>总数据大小 " & obj.TotalBytes & " Bytes<br>共花费了时间 " & (obj.SpendTime/1000) & " 秒<br>" response.write obj.version %><HR><table width="75%" border="1"> <tr> <td width="20%">标题:</td> <td width="80%"><%=obj.form("title1")%></td> </tr> <tr> <td width="20%">属于:</td> <td width="80%"><%=obj.form("sel1")%></td> </tr> <tr> <td width="20%">性别:</td> <td width="80%"><%=obj.form("sex1")%></td> </tr> <tr> <td width="20%">分类:</td> <td width="80%"><%=obj.form("list1")%></td> </tr> <tr> <td width="20%">内容: </td> <td width="80%"><%=obj.form("Content1")%></td> </tr> <tr> <td width="20%">是否选定:</td> <td width="80%"><%=obj.form("select1")%></td> </tr> <tr> <td width="20%">提交按钮:</td> <td width="80%"><%=obj.form("save")%></td> </tr></table><p> </p><p>上传文件如下:<br></p><table border="1"> <tr> <td nowrap>名称</td> <td nowrap>文件名(包括扩展名)</td> <td nowrap>文件名(不含扩展名)</td> <td nowrap>文件大小(B)</td> <td nowrap>原文件路径</td> <td nowrap>文件扩展名</td> <td nowrap>原文件名(含路径)</td> </tr> <%for i=0 to Obj.Count-1 %> <% userFile = Obj.userFile(i) %> <tr> <td> <% =userFile %> </td> <td> <% =Obj.FileName(userFile) %> </td> <td> <% =Obj.FileNameX(userFile) %> </td> <td> <% =Obj.FileSize(userFile) %> </td> <td> <% =Obj.FilePath(userFile) %> </td> <td> <% =Obj.FileExt(userFile) %> </td> <td> <% =Obj.OldFileName(userFile)%> </td> </tr> <% ' Obj.SaveToFTP "192.168.7.168",21,5000,"xu","xu",0,"",0,"",userFile,Obj.FileName(userFile) %> <% 'Obj.SaveFile userFile, "c:/" & Obj.FileName(userFile) %> <%' Obj.SaveFileAS userFile, "c:/" & Obj.FileName(userFile) %> <% 'Obj.SaveFileAS "file6", "c:/a.txt" %> <%' =Obj.GetFileData (userFile,"txt") %> <% next set Obj=nothing %></table><HR></BODY></HTML> |
上传结果:
总共上传 5 个文件总数据大小 4317 Bytes共花费了时间 .321 秒YouUpload 1.0版 版权所有(C)徐长友
上传文件如下:
|
以上使用了YouUpload上传组件,下面是YouUpload的介绍:
请参阅license.txt
适用于 Windows 98 + pws4 ,NT4.0 server + IIS 4 ,Win2K+IIS 5
http://www.csdn.net
要求: Windows NT Server 4 Edition + SP3 + IE4.01 + Option Pack / win98 + IE4.01 1. 如果下载的是安装程序,运行Setup即可2. 测试,你安装目录下的Examples复制到Web服务器的发布目录即可测试默认文档Default.asp3. 在浏览器地址栏输入如 'http://yourhost/uploadtest/' 4. 如果上方出现版权所有,基本上没多大问题了5. 你再上传一些文件试一下
请参考Examples目录下的示例 上传form的写法<form enctype="multipart/form-data" method="post" action="Upload.asp" name="Upload">enctype="multipart/form-data" 是必须的,并且method必须是post 如果获得上传文件的文件个数set obj=server.createobject("Yousoft.UploadFile")response.write "文件个数:"&obj.count 如果上传多个文件,如果确定对应file input上传的文件obj.userFile(N) 取得上传文件第N个的名称(表单名) 如何获得文件的后缀名ext=FileExt(FieldName) 'FieldName为表单名,如'file1' 如何将文件内容保存进数据库如果你使用sql server,需要定义一个image类型的字段dim conn,rsset conn=server.CreateObject("adodb.connection")conn.open "testfile","sa","xxx"set rs=server.CreateObject("adodb.recordset")rs.Open "SELECT * FROM [file] where filename is null",conn,1,3rs.AddNewrs("filename")=obj.FileName('file1')rs("filesize")=obj.FileSize('file1')rs("filecontent").AppendChunk Obj.GetFileData (userFile,"bin") 'BLOB数据不能直接赋值 如果不是二进制保存 "bin" 改为 "txt"rs.Update rs.Close conn.Close set rs=nothingset conn=nothing 相反的要将数据从数据库里面取出来,请参考下面的程序dim conn,rsdim contentset conn=server.CreateObject("adodb.connection")conn.open "testfile","sa","xxx"set rs=server.CreateObject("adodb.recordset")rs.Open "SELECT * FROM [file] where id =" & id,conn,1,1content=rs("filecontent").getChunk(clng(rs("filesize")))))conn.Close set rs=nothingset conn=nothing 安装可能出现的问题 如果你发现,请与我联系! 程序使用可能存在的问题 如果你发现,请与我联系!
如果你在测试中发现任何问题,请mailto: mailto:yousoft@chinaren.com?subject=关于YouUpload,或者请在我主页的bbs进行讨论或留言。 希望大家能对这个组件多提意见。 在我们讨论asp问题的时候,常常会遇到许多问题只有利用asp components来解决,而这些com通常只有在国外的站点才可能找到,可见国内的这方面的东东还少。所以我希望得到各位的支持。 |