快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

ASP文件上传函数库

说明:
假如你需要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实现文件上载(上传)的各种方式
    微笑服务 优质保证 索取样品