asp+access:无法从数据库中读取数据
asp+access数据库名称:Show_img,表:img,字段:id-自动编号,imgdata-OLE.conn.asp<%dimconn,rsfunctionget...
asp+access
数据库名称:Show_img,表:img,字段:id-自动编号,imgdata-OLE.
conn.asp
<%
dim conn,rs
function getdata(sql)
dbpath="dbl/Show_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=server.CreateObject("ADODB.recordset")
rs.open sql,conn,3,2
end function
sub rsclose()
rs.close()
set rs=nothing
conn.close()
set conn=nothing
end sub
%>
-------------------------------------------------------------------------------------------------------
up.asp
<body>
<div align="center">
<form action="up.asp" method="post" enctype="multipart/form-data" >
<input type="file" size="12" name="imgurl" id="imgurl">
<input type="submit" value="upload">
</form>
</div>
</body>
</html>
<%
if (request.totalbytes)>0 then '如果有数据提交,则进行下面的处理
%>
<!--#include file="conn.asp"-->
<%
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)
sql="select * from img"
getdata(sql)
rs.addnew
rs("imgdata").AppendChunk myData
rs.update
rsclose()
response.clear
response.write "success!"
end if
%>
---------------------------------------------------------------------------------------------------------
show.asp
body>
<!--#include file="conn.asp"-->
<%
dim id
id=trim(request("id"))
sql="select * from img where id="&id
getdata(sql)
Response.ContentType="image/jpg"
Response.BinaryWrite rs("img_url").getChunk(8000000)
rsclose()
%>
</body>
</html>
--------------------------------------------------------------------------------------------------------
imgshow.asp
<body>
<!--#include file="conn.asp"-->
<div align="center">
<img src="show.asp?id=<%rs("id")%>" />
</div>
</body>
</html>
可正常上传,不过运行show.asp时,出现:错误类型:
Microsoft JET Database Engine (0x80040E14)
语法错误 (操作符丢失) 在查询表达式 'id=' 中。
/conn.asp, 第 11 行
估计id有问题,但不知道在哪里,那位高手可答,急! 展开
数据库名称:Show_img,表:img,字段:id-自动编号,imgdata-OLE.
conn.asp
<%
dim conn,rs
function getdata(sql)
dbpath="dbl/Show_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=server.CreateObject("ADODB.recordset")
rs.open sql,conn,3,2
end function
sub rsclose()
rs.close()
set rs=nothing
conn.close()
set conn=nothing
end sub
%>
-------------------------------------------------------------------------------------------------------
up.asp
<body>
<div align="center">
<form action="up.asp" method="post" enctype="multipart/form-data" >
<input type="file" size="12" name="imgurl" id="imgurl">
<input type="submit" value="upload">
</form>
</div>
</body>
</html>
<%
if (request.totalbytes)>0 then '如果有数据提交,则进行下面的处理
%>
<!--#include file="conn.asp"-->
<%
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)
sql="select * from img"
getdata(sql)
rs.addnew
rs("imgdata").AppendChunk myData
rs.update
rsclose()
response.clear
response.write "success!"
end if
%>
---------------------------------------------------------------------------------------------------------
show.asp
body>
<!--#include file="conn.asp"-->
<%
dim id
id=trim(request("id"))
sql="select * from img where id="&id
getdata(sql)
Response.ContentType="image/jpg"
Response.BinaryWrite rs("img_url").getChunk(8000000)
rsclose()
%>
</body>
</html>
--------------------------------------------------------------------------------------------------------
imgshow.asp
<body>
<!--#include file="conn.asp"-->
<div align="center">
<img src="show.asp?id=<%rs("id")%>" />
</div>
</body>
</html>
可正常上传,不过运行show.asp时,出现:错误类型:
Microsoft JET Database Engine (0x80040E14)
语法错误 (操作符丢失) 在查询表达式 'id=' 中。
/conn.asp, 第 11 行
估计id有问题,但不知道在哪里,那位高手可答,急! 展开
4个回答
展开全部
这问题很明显啊 id参数没有接收到
1楼说不要空格 空格不影响
2楼说id只不能是字符串类型 这个也不影响
因为他本来就要写到字符串里 在传给数据库
这种问题 只能你自己试试了 靠代码来看 很累眼睛
你可以在sql语句上面输出一下id
request.write(id)
request.end()
这样一点一点测试
====
哈 看了下代码 发现错误了
<img src="show.asp?id=<%rs("id")%>" /> 这是你的
<img src="show.asp?id=<%=rs("id")%>" /> 这个改的 少个=号
上面回答那些 以后可以用
1楼说不要空格 空格不影响
2楼说id只不能是字符串类型 这个也不影响
因为他本来就要写到字符串里 在传给数据库
这种问题 只能你自己试试了 靠代码来看 很累眼睛
你可以在sql语句上面输出一下id
request.write(id)
request.end()
这样一点一点测试
====
哈 看了下代码 发现错误了
<img src="show.asp?id=<%rs("id")%>" /> 这是你的
<img src="show.asp?id=<%=rs("id")%>" /> 这个改的 少个=号
上面回答那些 以后可以用
展开全部
字段中ID是自动编号的,一般是长整型的,而从参数中获得的ID值可能类型与之不同,可在上句中将ID转换为长整型的.至于1楼问的是否要空格,字符串用&串接时有没有空格在VBS中不影响代码解析.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<img src="show.asp?id=<%rs("id")%>" />
<%rs("id")%>少写了一个 =
改成
<%=rs("id")%>
<%rs("id")%>少写了一个 =
改成
<%=rs("id")%>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sql="select * from img where id="&id
不空格行吗?
不空格行吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询