当前位置: 首页 > 图文教程 > 网络编程 > ASP > 二文件上传,才30行代码

ASP
ASP进阶教程Ⅰ:循序渐进学留言薄
ASP进阶教程Ⅱ:一个简单的留言簿
ASP进阶教程Ⅲ:给留言簿润下色
ASP进阶教程Ⅵ:留言簿在线删除留言
ASP进阶教程Ⅴ:留言簿在线留言编辑(一)
ASP进阶教程Ⅴ:留言簿在线留言编辑(二)
ASP进阶教程Ⅳ:加入精彩留言
ASP进阶教程Ⅸ:留言查询功能(一)
ASP进阶教程Ⅸ:留言查询功能(二)
ASP进阶教程Ⅷ:数据库版本的留言簿
ASP基础讲座(上)
ASP系列讲座(一)关于 Active Server Pages
ASP系列讲座(二)ASP 的新功能
Asp用于分页的两个函数
ASP与Oracle连接时的TNS错误
小工具:统计有多少行JS代码和ASP代码,并有多少字节
一个xmlhttp读取xml的例子
ASP终极防范上传漏洞
防止网站内容被人小偷和采集的ASP代码
批量判断域名是否被注册程序代码

ASP 中的 二文件上传,才30行代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 110 ::
收藏到网摘: n/a

  <%
' upload.asp
Function IntMin(n,y)
    If n<y and n>0 Then
        IntMin=Int(n)
    ElseIf y>0 Then
        IntMin=Int(y)
    Else
        IntMin=n
    End If
End Function

Function getFormValue(Name)
    Dim formSize,formData,DataHeader,DataStart,DataEnd,formNameStart,formNameEnd,formName,firstFilter
    formSize=Request.TotalBytes()
    formData=Request.BinaryRead(formSize)
    firstFilter=true
        For i=1 to Len(Name)
            tmp=tmp&ChrB(AscB(Mid(Name,i,1)))
        Next
    Name=tmp
    DataEnd=0
    DataStart=0
    Do While formSize>0
        formData=RightB(formData,formSize-DataEnd-DataStart+1)
        formSize=formSize-DataEnd-DataStart+1
        DataHeader=LeftB(formData,InStrB(formData,Chrb(13)&Chrb(10))-1)
        DataStart=InStrB(formData,ChrB(13)&ChrB(10)&ChrB(13)&ChrB(10))+4
        DataEnd=InStrB(DataStart+1,formData,DataHeader)-DataStart
            If DataStart<0 or DataEnd<=0 Then Exit Do
        filteredData=MidB(formData,DataStart,DataEnd-1)
        formNameStart=InStrB(formData,ChrB(AscB("n"))&ChrB(AscB("a"))&ChrB(AscB("m"))&ChrB(AscB("e"))&ChrB(AscB("="))&ChrB(AscB("""")))+6
        formNameEnd=intMin(InStrB(formNameStart,formData,ChrB(13)&ChrB(10))-formNameStart-1,InStrB(formNameStart,formData,ChrB(AscB(";")))-formNameStart-1)
        formName=MidB(formData,formNameStart,formNameEnd)
            If Name=formName Then
                getFormValue=filteredData
                Exit Function
            End If
    Loop
getFormValue=Name&" Not Found!"
End Function
Response.binaryWrite(getFormValue("loadfromfile"))'这个loadfromfile就是表单名啦~
%>