|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
说明: 假如你需要file表单的串值,用GetFullName("file") 假如需要file表单的文件名,用GetFileName("file") 假如需要file表单的扩展名,用GetExtName("file") 假如需要普通文本表单的值,用MyRequest("password") 假如需要file表单的二进制值,也是用MyRequest("file") 保存文件用SaveFile("file","myUpload.jpg") 写入数据库的格式: Rs.AppandChunk MyRequest("file") <% \\\'Program:54powerman \\\'EMail & MSN:54powerman@163.com \\\'QQ:19486554 \\\'初始化数据 Response.buffer=true FormData = Request.BinaryRead(Request.TotalBytes) bncrlf = ChrB(13)&ChrB(10) Set sr=CreateObject("Adodb.Stream") sr.Mode=3 sr.Type=1 sr.Open sr.Write FormData Init=sr \\\'常用函数 Function Str2B(Str) For i = 1 To len(Str) Str2B = Str2B&ChrB(Asc(Mid(Str,i,1))) Next End Function Function B2Str(Str) For i = 1 To LenB(Str) ThisCharCode = AscB(MidB(Str,i,1)) If ThisCharCode < &H80 Then B2Str = B2Str & Chr(ThisCharCode) Else NextCharCode = AscB(MidB(Str,i+1,1)) B2Str = B2Str & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode)) i = i + 1 End If Next End Function Function MyRequest(FormName) divider = leftb(FormData,inStrb(FormData,bncrlf)-1) Cur = inStrb(FormData,Str2B("name=")&ChrB(34)&Str2B(FormName)&ChrB(34)) MyRequest=null DataStart=inStrb(Cur,FormData,bncrlf&bncrlf)+4 DataEnd = inStrb(DataStart+1,FormData,divider)-DataStart TempStr = Midb(FormData,Cur,DataStart) If inStrb(TempStr,Str2B("filename=")) Then MyRequest = Midb(FormData,DataStart,DataEnd) else MyRequest = B2Str(Midb(FormData,DataStart,DataEnd)) End If End Function Function GetFullName(FormName) divider = leftb(FormData,inStrb(FormData,bncrlf)-1) Cur = inStrb(FormData,Str2B("name=")&ChrB(34)&Str2B(FormName)&ChrB(34)) DataStart=inStrb(Cur,FormData,Str2B("filename="))+10 DataEnd = inStrb(DataStart+1,FormData,ChrB(34))-DataStart TempStr = Midb(FormData,Cur,DataStart) GetFullName = B2Str(Midb(FormData,DataStart,DataEnd)) End Function Function GetFileName(FormName) FullName=GetFullName(FormName) GetFileName = Mid(FullName,InStrRev(FullName,"")+1) End Function Function GetExpName(FormName) GetExpName = Mid(GetFileName(FormName),InStrRev(GetFileName(FormName),".")+1) End Function Function SaveFile(FormName,FileName) divider = leftb(FormData,inStrb(FormData,bncrlf)-1) Cur = inStrb(FormData,Str2B("name=")&ChrB(34)&Str2B(FormName)&ChrB(34)) SaveFile=false DataStart=inStrb(Cur,FormData,bncrlf&bncrlf)+4 DataEnd = inStrb(DataStart+1,FormData,divider)-DataStart set dr=CreateObject("Adodb.Stream") dr.Mode=3 dr.Type=1 dr.Open sr.Position=DataStart-1 sr.CopyTo dr,DataEnd dr.SaveToFile FileName,2 sr.Close set sr=nothing dr.Close set dr=nothing SaveFile=true End Function Function FileSize(FormName) divider = leftb(FormData,inStrb(FormData,bncrlf)-1) Cur = inStrb(FormData,Str2B("name=")&ChrB(34)&Str2B(FormName)&ChrB(34)) FileSize=0 DataStart=inStrb(Cur,FormData,bncrlf&bncrlf)+4 FileSize = inStrb(DataStart+1,FormData,divider)-DataStart-2 End Function %> 返回类别: 教程 上一教程: ASP组件初级入门与精通系列之四 下一教程: 关于AUTOCOMPLETE(文本框的自动填充) 您可以阅读与"ASP文件上传函数库"相关的教程: · 中文的无组件文件上传ASP函数 · ASP无组件文件上传的实例 · asp+文件上传增强实例 · 利用ASP.NET设计FTP文件上传(下) · 使用ASP实现文件上载(上传)的各种方式 |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |