为什么两种方式显示数据库字段中保存的十六进制的图片都不行呢

hulifang333 2009-09-09 01:51:53
第一种方式:
elseif sName="jpg" or sName="jpeg" or sName="gif" or sName="png" or sName="bmp" or sName="wbmp" then '图片数据,用标签显示
response.Write "3===="
nHeight=rs2("Height")
nWidth=rs2("Width")
contents="<img alt='天气' src='showimgs.asp?id="& Id &"&format=" & sName'/>"
Response.ContentType "image/"&sName
Response.Charset "utf-8"
response.Write contents
结果:页面中输出了3====没有图片内容,只看到图片标签了,在showimgs.asp页面中是通过id重新查找存放图片的字段(image类型数据,十六进制的)

第二种方式:
elseif sName="jpg" or sName="jpeg" or sName="gif" or sName="png" or sName="bmp" or sName="wbmp" then '图片数据,用字节流显示
response.Write "2===="
nHeight=rs2("Height")
nWidth=rs2("Width")
Response.ContentType "image/" & sName
contents = rs("recorddata")
Response.BinaryWrite contents

结果:页面中没有图片标签也图片内容,只输出了2====

谢谢!高手们请指点迷津,这个问题看似不难哦,可是就是不出来
...全文
100 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
hulifang333 2009-09-10
  • 打赏
  • 举报
回复
所以第二种方式实际上是一个陷阱,第一种方式的思路正是把这个陷阱给避开了。问题已经解决了。昨天的问题是图片src所在的页面在使用数据库连接时路径不对了(实际上是重新把条件传到另外一个页面查询出来数据库中保存的图片的字段)所以图片没有显示出来。看来asp还是很需要细致的。谢谢!
poiuy343 2009-09-09
  • 打赏
  • 举报
回复
对头~

就是binarywrite 这个是以二进制形式输出内容的,

这个和response.write冲突 不能同时使用的

就像 你又想一边吃饭 又想一边唱歌一样,但是嘴巴只有一个
hookee 2009-09-09
  • 打赏
  • 举报
回复
<img src="xxx.asp">
xxx.asp输出图片数据之前不能输出任何字符.

28,390

社区成员

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

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