Image T-SQL使用经典ASP.NET显示BLOB图像
我使用这个示例来显示图像,这些图像以blob格式存储在启用文件流的数据库中 这是完美的工作方式,但我在经典asp中的表现非常糟糕,并且在尝试将此图像与HTML元素混合显示时遇到问题 通过测试和尝试,我得出结论,这是因为Response.ContentType 在上面的示例中,要显示图像,他们使用的是图像的内容类型。完美的我的数据库里也有这个。但是当我从那里读取并在asp文件中更改它时,asp文件中的整个HTML都不会显示 为了显示混合了HTML标记的图像,我应该做什么。这是我糟糕的asp代码的一部分,它将只显示数据库中的一张图片,而不显示其他HTMLImage T-SQL使用经典ASP.NET显示BLOB图像,image,asp-classic,filestream,blobstore,Image,Asp Classic,Filestream,Blobstore,我使用这个示例来显示图像,这些图像以blob格式存储在启用文件流的数据库中 这是完美的工作方式,但我在经典asp中的表现非常糟糕,并且在尝试将此图像与HTML元素混合显示时遇到问题 通过测试和尝试,我得出结论,这是因为Response.ContentType 在上面的示例中,要显示图像,他们使用的是图像的内容类型。完美的我的数据库里也有这个。但是当我从那里读取并在asp文件中更改它时,asp文件中的整个HTML都不会显示 为了显示混合了HTML标记的图像,我应该做什么。这是我糟糕的asp代码的
SQL = "SELECT RecordID FROM InfoTable"
Set Recordset = Server.CreateObject("ADODB.Recordset")
Recordset.Open SQL,AdapterDataBaseActiveConnection
If Recordset.EOF Then
Response.Write("No records returned.")
Else
Do While NOT Recordset.Eof
Set CurrentNumber=Recordset("RecordID")
'Response.write CurrentNumber
'Response.write "<br>"
Set rs = AdapterDataBaseActiveConnection.Execute("SELECT ContentType FROM InfoTable WHERE RecordID="&CurrentNumber)
Set CurrentContentType=rs("ContentType")
'Response.write CurrentContentType
Response.Expires = 0
Response.Buffer = TRUE
Response.Clear
Response.ContentType = CurrentContentType
Set rsa = AdapterDataBaseActiveConnection.Execute("SELECT RecordBLOB FROM ImageTable WHERE RecordID="&CurrentNumber)
'Response.write "<div>"
Response.BinaryWrite rsa("RecordBLOB")
'Response.write "</div>"
Recordset.MoveNext
Loop
End If
SQL=“从信息表中选择记录ID”
Set Recordset=Server.CreateObject(“ADODB.Recordset”)
记录集。打开SQL,AdapterDataBaseActiveConnection
如果是Recordset.EOF,则
Response.Write(“没有返回记录”)
其他的
不要记录集。Eof
Set CurrentNumber=记录集(“记录ID”)
'Response.write CurrentNumber
“Response.write”
“
设置rs=AdapterDataBaseActiveConnection.Execute(“从信息表中选择ContentType,其中RecordID=“&CurrentNumber”)
设置CurrentContentType=rs(“ContentType”)
'Response.write CurrentContentType
Response.Expires=0
Response.Buffer=TRUE
回答,清楚
Response.ContentType=CurrentContentType
设置rsa=AdapterDataBaseActiveConnection.Execute(“从ImageTable中选择RecordBLOB,其中RecordID=“&CurrentNumber”)
“Response.write”
Response.BinaryWrite rsa(“RecordBLOB”)
“Response.write”
Recordset.MoveNext
环
如果结束
我的最终目标是将blob数据放入“”标记中。这可能吗?也许我应该使用某种类型的转换?我想了想,就放弃了。我刚刚尝试在“”标记中显示图像,但也没有成功
请给我一些建议,在这种情况下我应该如何处理
提前感谢。通常是这样工作的: 这是页面中的图像
服务器响应一个请求,设置MIME头并流式传输此特定图像的图像数据。您没有输出HTML,HTML已经在页面中。您需要告诉img标签从哪里获取数据
请参阅:+9000以提醒我1995年的记忆:)。即使在“现代”技术中,您要做的就是向另一个页面提供一个“src”,将数据直接复制到输出。你不能“内联”完成它——它必须通过另一个请求。谢谢你提醒我我有多大了PIf如果您真的希望以内联方式进行,您可以在以下位置适当地使用信息: