当数据库中没有图片时候该怎么办

chenypluck 2003-09-14 07:59:24
我的数据库是ACCESS,当我在数据库中存入图片时候,能显示;可是当没有图片时候,仍然在显示图片的位置上显示出一个红色的“x”。实际上我希望当没有图片时候,只显示出文字,不要显示出这个红色的“x”。
我的部分代码如下:
<% set rsimg=server.createobject("ADODB.recordset")
sqlimg="select img from news where id="&request("id")
if not rsimg.eof then
Response.ContentType = "image/gif" and "image/jpeg" and "image/jpg"
Response.BinaryWrite rec("img").getChunk(7500000)
%>
<img src=showimg3.asp?id=<%=rs("id")%>>
<%else
rsimg.close
set rsimg=nothing%>
<img src="images/note.jpg" >
'response.redirect "images/note.jpg"
<%end if%>


showimg3.asp:

<%@ Language=VBScript %>
<!--#include file=conn.asp -->
<%
id=Request("id")
set rs=server.CreateObject("adodb.recordset")
sql="SELECT * FROM news where id="&id
rs.Open sql,conn,1,3
response.contenttype="image/gif" and "image/jpeg" and "image/jpg"
Response.BinaryWrite rs("img")
%>
多谢了
...全文
34 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
chenypluck 2003-09-16
  • 打赏
  • 举报
回复
谢谢大家的热心帮助。真不知道该怎么感谢大家。祝大家工作顺利,身体健康!!!!
klgzb 2003-09-15
  • 打赏
  • 举报
回复
呵呵,不好意思,多删了几个字符,
Response.BinaryWrite rs("img").GetChunk( rs("ImageSize") )
klgzb 2003-09-15
  • 打赏
  • 举报
回复
你可以不用recordset对象打开库的,
你可以用,set rs=conn.execute(sql)这样的快点
klgzb 2003-09-15
  • 打赏
  • 举报
回复
你先用len判断rs("img")为不为空,最好的是,在你把图片存入库里的时候,同也把图片的大小也存进去和把图片的类型也存入去。比如,rs("img")是图片的内容,rs("ImageSize")是大小,rs("ImageType")是类型.

Response.ContentType = rs("ImageType")
Response.BinaryWrite rs("img").rs("ImageSize")

如果库里没有图片大小的话,你可以用LENB来得出。
chenypluck 2003-09-15
  • 打赏
  • 举报
回复
很急啊
chenypluck 2003-09-15
  • 打赏
  • 举报
回复
我修改为如下:

view.asp:
<%
set rsimg=server.createobject("ADODB.recordset")
sqlimg="select img from news where id="&request("id")
if len(rsimg("img"))<>0 then
%>
<div align="center"><img src=showimg3.asp?id=<%=rs("id")%>>
<%
else
rsimg.close
set rsimg=nothing%><img src="images/note.jpg" ><%end if%>

同时在showimg3.asp中<%@ Language=VBScript %>
<!--#include file=conn.asp -->
<%
id=Request("id")
set rs=server.CreateObject("adodb.recordset")
sql="SELECT * FROM news where id="&id
rs.Open sql,conn,1,3
if len(rs("img"))<>0 then
response.contenttype="image/gif" and "image/jpeg" and "image/jpg"
Response.BinaryWrite rs("img")
else
response.write "no"
end if
%>
结果还是这样。请多指教
summersun418 2003-09-15
  • 打赏
  • 举报
回复
刚才写漏字母了

<% set rsimg=server.createobject("ADODB.recordset")
sqlimg="select img from news where id="&request("id")
rsimg.open sqlimg,conn,3,3
if not rsimg.eof then
if rsimg("img").actualsize<>0 then
%>
<img src=showimg3.asp?id=<%=rs("id")%>>
<%
else
response.write "数据库没有图片!"
end if
else
rsimg.close
set rsimg=nothing%>
<img src="images/note.jpg" >
'response.redirect "images/note.jpg"
<%end if%>


关键是rsimg("img").actualsize<>0

summersun418 2003-09-15
  • 打赏
  • 举报
回复
<% set rsimg=server.createobject("ADODB.recordset")
sqlimg="select img from news where id="&request("id")
rsimg.open sqlimg,conn,3,3
if not rsimg.eof then
if rsimg.actualsize<>0 then
%>
<img src=showimg3.asp?id=<%=rs("id")%>>
<%
else
response.write "数据库没有图片!"
end if
else
rsimg.close
set rsimg=nothing%>
<img src="images/note.jpg" >
'response.redirect "images/note.jpg"
<%end if%>
yzwxjun 2003-09-15
  • 打赏
  • 举报
回复
另外设一个字段,如,haveimage
在存放图片的时候判断是否有图片传入到数据库,有则为1,无则为0
取出的时候,就根据这个字段来判断就可以了。
富察咪咪 2003-09-15
  • 打赏
  • 举报
回复
if not rsimg.eof then
if Isnull(rec("img")) Then
Response.ContentType = "image/gif" and "image/jpeg" and "image/jpg"
Response.BinaryWrite rec("img").getChunk(7500000)
Else

End if
%>
<img src=showimg3.asp?id=<%=rs("id")%>>
<%else
rsimg.close
set rsimg=nothing%>
<img src="images/note.jpg" >
'response.redirect "images/note.jpg"
<%end if%>
chenypluck 2003-09-15
  • 打赏
  • 举报
回复
请多指教
klgzb 2003-09-14
  • 打赏
  • 举报
回复
用LEN来判断rs("img")是否有数据
chenypluck 2003-09-14
  • 打赏
  • 举报
回复
请多指教谢谢了
chenypluck 2003-09-14
  • 打赏
  • 举报
回复
请多指教
chenypluck 2003-09-14
  • 打赏
  • 举报
回复
好象这个条件判断不行
if rs("img")="" then
  • 打赏
  • 举报
回复
if rs("img")="" then

response.write"无"

end if
chenypluck 2003-09-14
  • 打赏
  • 举报
回复
请多指教

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧