怎样用asp显示数据库里的图片

怎样用asp显示数据库里的图片,第1张

你没有说清是什么数据库,先说说access吧。 如何从ACCESS数据库中读取images 1。ACCESS和FoxPro数据库中的图形格式 当浏览器遇到一个<img>标志时,它会根据你设定的src属性来下载文件。 这可能是一个图形文件或则是一个ASP页面。 如果是一个返回gif二进制的ASP页面 浏览器需要知道返回的是什么格式的图形文件 因为这个原因,就需要指定content type,为image/gif,image/bmp image/jpeg或则其他什么的。 Response.contentType = "image/gif" 但这会导致另外一个问题,那就是我们只能够显示gif格式的图象, 或则说保存在数据库中的东西只能够是gif格式的了。 但是一些数据库是使用gif格式保存的,但是另外一些则是使用 jpeg格式保存的,甚至其他是采用OLE方式来保存图形的。 所以我们必须根据图形的格式来设置response的content type. 注意的是你也可以从一个文件中新建一个位图对象,但使用这样 的方式保存在数据库中的图形格式是浏览器不能够识别的。 当你往数据库中保存图象时,你应该知道你需要使用什么格式来保存 你可以把文件中的每一个字节保存下来,或则通过ACCESS/Foxpro的把图形保存 为一个OLE格式。 你使用什么格式保存图象决定了你在ASP中用什么格式来读出图形来。 具体来说,如果你在ACCESS/FoxPro中将图形保存为bmp,gif,jpeg( 这个必须要使用到ACCESS/FoxPro的OLE对象,即使用ACCESS的插入对象 对话框来完成),这是当你使用 image/bmp时浏览器是不能够解释的。 现在假设在数据库中保存的是你所想要的图形格式 (GIF, JPEG, BMP, TIFF, 等)现在来看看要怎么把它们从 数据库中读出来。 在ACCESS中使用了两个关键的技术来保存图形 1。使用了bmp格式 2。78个字节的文件头 <% response.Expires = 0 response.Buffer = True response.Clear response.contentType = "image/bmp" %>接着你要干的就是去掉那78个字节的OLE对象的文件头。 <% Const OLEHEADERSIZE = 78 nFieldSize = rs("photo").ActualSize oleHeader = rs("photo").GetChunk(OLEHEADERSIZE) imageBytes = rs("photo").GetChunk(nFieldSize - OLEHEADERSIZE) Response.BinaryWrite imageBytes %>现在举一个例子: 如果你要得到一个职工的信息,这段信息包括一个介绍和他的图象。 并且要同时显示文字和图形。 代码如下:(其中的theImg是一个代理页面) theImg.asp <% response.Expires = 0 response.Buffer = True response.Clear response.contentType = Session("ImageType") response.BinaryWrite Session("ImageBytes") Session("ImageType") = "" Session("ImageBytes") = "" response.End %>Function SetImageForDisplay(field, contentType) OLEHEADERSIZE = 78 contentType = LCase(contentType) select case c

显示图片不是那样的,那样出来的只是路径,假设你数据库中存放图片路径的字段是picpath,那么你这样:先读取这个值;

set rs=...

... 这里就不说了

显示图片:<img src="<%=rs("picpath")%>">这样读取的图片是按原来尺寸显示,你可以限制尺寸:

<img src="<%=rs("picpath")%>" width="这里你可以设置" heigth="这里你可以设置" border="0">这样就可以了。

photo文本字段中不要存入e:\

这个在服务器上是行不通的.

你只要存入站内路径就可以了.

显示出来方法

<img

src="图片路径地址">


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9729877.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存