使用PHP在HTML表中显示Image[Bob]和Data[Varchar]


Displaying Image[Blob] and Data[Varchar] in a HTML Table using PHP

到目前为止,我真的不知道如何在HTML表中显示图像及其数据。

以下是我的字段:

Name  varchar(100)
Image blob

到目前为止,这是我的代码,但我认为这不是它,它也有错误。

<?php
$host = 'localhost';
$user = 'root';
$pass = '';
mysql_connect($host, $user, $pass);
mysql_select_db('test');
$sql = "SELECT * from test_mysql";
$result = mysqli_query($db,$sql);
while($arraySomething = mysqli_fetch_array($result))
{
    echo "<img src='php/imgView.php?imgId=".$arraySomething."' />";
}
?>

我想要的唯一输出是HTML表中的Display Image(blob)和Data(Varchar)。

TY非常感谢未来的帮助。

如果您坚持将图像存储在mysql表中,则有两个选项:

  1. 您可以在img标记的src属性中使用data-uris-int,该属性将包含base64编码的图像数据。有关此技术的概述,请参阅css-trcks.com上的DataURI文章。你也可以在这里找到一个SO帖子和代码

Pro:您可以通过运行单个php代码生成完整的页面,包括文本和数据。

Con:因为该技术使用base64编码,所以大图片确实会增加需要传输到客户端的数据的大小。一些较旧的浏览器不支持此功能。#


  1. 创建一个单独的php文件,该文件以image id作为get参数,从数据库中检索图像,设置正确的mime头,并将图像数据发送到客户端。主php文件只生成页面的文本内容,对于每个图像,只需在img标记的src属性中创建一个对将图像发送到客户端的其他php文件的引用

Pro:需要较少的数据传输到客户端,浏览器可以并行下载图像。

Con:您需要分离文本和图像输出的生成。

因此,有关此选项的问题可以在此处找到