上传图片leftB问题

来源:百度知道 编辑:UC知道 时间:2024/06/15 17:04:35
错误类型:
Microsoft VBScript 运行时错误 (0x800A0005)
无效的过程调用或参数: 'leftB'

请高手帮帮忙,如何解决
<%
response.buffer=true
formsize=request.totalbytes
formdata=request.binaryread(formsize)
bncrlf=chrB(13)&chrB(10)
divider=leftB(formdata,clng(instrb(formdata,bncrlf))-1)
datastart=instrb(formdata,bncrlf&bncrlf)+4
dataend=instrb(datastart+1,formdata,divider)-datastart
mydata=midb(formdata,datastart,dataend)
setconnGraph=server.CreateObject("ADODB.connection")
connGraph.ConnectionString="driver={MicrosoftAccessDriver(*.mdb)};DBQ="&server.Ma
pPath("/datebase/hunyin.mdb")&";uid=;PWD=;"
connGraph.Open
setrec=server.createobject("ADODB.recordset")
rec.Open"SELECT*FROM[hunyin]whereidisnull",connGraph,1,3
rec.addnew
rec("img").appendchunkmydata
rec.update
rec.close
setrec=nothing
setconnGraph=nothing
%>

1.如果服务器装了文件上传组件,可查阅一下该组件的相关属性和方法,不过现在很多服务器空间都不支持这类组件.暂不在这里讨论.

2.若服务器不支持文件上传组件,可以考虑自己写个无组件上传程序,网上有一个"化境无组件上传"比较经典,也比较好用.地址:http://www.5xsoft.com/Down.aspx?id=2.
你可以下载一个参考,里面的说明很详细.
不过可能有的服务器也不会支持,因为该组件可能会被视为木马之类而被清除.

3.利用服务器的FSO组件可实现文本文件之类的在线读写,但要实现上传图片估计不能,我还没见过.

4.以上办法都不行时,我们可以考虑将图片上传到数据库.下面以Access为例,看一个简单的代码:

首先建一个数据库,假设为(img.mdb).在其中建一表(pic),表中有两个字段(id,img),id数据类型为"自动编号",img的类型为"OLE对象".
下面用三个文件用来实现图片功能,conn.asp是定义数据库连接函数的,up.asp用来上传图片,show.asp用来从数据库读取图片.

-------------conn.asp--------------
<%
dim conn,rs

function getdata(sql)
dbpath="img.mdb"
set conn=server.CreateObject("ADODB.connection")
connstr="provider=Microsoft.jet.oledb.4.0;data source="&server.MapPath(dbpath)
conn.open connstr
set rs=serve