php 无组件上传,ASP_无组件实现文件上传/下载,' 用ASP实现无组件上传/下载文 - phpStudy...

无组件实现文件上传/下载

' 用ASP实现无组件上传/下载文件

'

' 功能简介

' 将上传的文件数据保存到数据库中,可以处理表单中的多个上传文件的情况

' 适用于各种数据库,使用ADO的方法连接数据库

' 本示例中使用的是ACCESS数据库:zj.mdb

' 表:tb_img(id int(自增列),path text(255) 保存上传文件的目录

' ,fname text(250) 保存上传的文件名,type test(250) 保存上传文件的类型

' ,img ole对象 保存上传的文件内容

'

'

'==================================================================

'==================================================================

'

' 上传文件的HTML页: zj_up.htm

'

'==================================================================

复制代码 代码如下:

文件上传保存到数据库中

'==================================================================

'

' 上传文件保存到数据库的ASP页: zj_up.asp

'

'==================================================================

复制代码 代码如下:

Response.Expires=0

Function f_Bin2Str(ByVal sBin)

Dim iI, iLen, iChr, iRe

iRe = ""

If Not IsNull(sBin) Then

iLen = LenB(sBin)

For iI = 1 To iLen

iChr = MidB(sBin, iI, 1)

If AscB(iChr) > 127 Then

iRe = iRe & Chr(AscW(MidB(sBin, iI + 1, 1) & iChr))

iI = iI + 1

Else

iRe = iRe & Chr(AscB(iChr))

End If

Next

End If

f_Bin2Str = iRe

End Function

iConcStr = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False" & _

";Data Source=" & server.mappath("zj.mdb")

iSql="tb_img"

set iRe=Server.CreateObject("ADODB.Recordset")

iRe.Open iSql,iConcStr,1,3

iLen=Request.TotalBytes

sBin=Request.BinaryRead(iLen)

iCrlf1 = ChrB(13) & ChrB(10)

iCrlf2 = iCrlf1 & iCrlf1

iLen = InStrB(1, sBin, iCrlf1) - 1

iSpc = LeftB(sBin, iLen)

sBin = MidB(sBin, iLen + 34)

iPos1 = InStrB(sBin, iCrlf2) - 1

While iPos1 > 0

iStr = f_Bin2Str(LeftB(sBin, iPos1))

iPos1 = iPos1 + 5

iPos2 = InStrB(iPos1, sBin, iSpc)

iPos3 = InStr(iStr, "; filename=""") + 12

If iPos3 > 12 Then

iStr = Mid(iStr, iPos3)

iPos3 = InStr(iStr, Chr(13) & Chr(10) & "Content-Type: ") - 2

iFn = Left(iStr, iPos3)

If iFn <> "" Then

iRe.AddNew

ire("path")=left(iFn,instrrev(iFn,"\"))

iRe("fname") = mid(iFn,instrrev(iFn,"\")+1)

iRe("type") = Mid(iStr, iPos3 + 18)

iRe("img").AppendChunk MidB(sBin, iPos1, iPos2 - iPos1)

iRe.Update

End If

End If

sBin = MidB(sBin, iPos2 + iLen + 34)

iPos1 = InStrB(sBin, iCrlf2) - 1

Wend

iRe.close

set iRe=Nothing

%>

'==================================================================

'

' 下载数据的ASP页: zj_down.asp

'

'==================================================================

复制代码 代码如下:

Response.Buffer=true

Response.Clear

iConcStr = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False" & _

";Data Source=" & server.mappath("zj.mdb")

set iRe=server.createobject("adodb.recordset")

iSql="tb_img"

iRe.open iSql,iconcstr,1,1

Response.ContentType=ire("type")

Response.BinaryWrite iRe("img")

iRe.close

set iRe=Nothing

%>相关阅读:

js将类数组对象转换成数组对象

MySQL数据库存储引擎详解

文本框textarea标签

删除邮件时调用的文件(mail_prc.asp)

学习DIV+CSS难不难 需要掌握哪些知识

ASP.NET教程:Ref和Out关键字异同

asp.net安全、实用、简单的大容量存储过程分页

XHTML与HTML之间的区别

HTML5: Web 标准最巨大的飞跃

如何防止被IE工具拦截导致无法弹出窗口

Php部分常见问题总结

javascript asp教程第三课 new String() 构造器

PHP Zip解压 文件在线解压缩的函数代码

eregi_replace与preg_replace 函数代码的用法比较

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值