使用PHP在HTML表中显示图像[Blob]和数据[Varchar]

时间:2016-03-24 11:32:17

标签: php html mysql

截至目前,我真的不知道如何在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非常适合未来的帮助。

1 个答案:

答案 0 :(得分:0)

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

  1. 您可以在img标记的src属性中使用数据uris,其中包含base64编码的图像数据。有关此技术的概述,请参阅css-trcks.com上的Data URIs post。您也可以找到包含代码的SO帖子here
  2. Pro :您可以从单个php代码运行生成完整页面,包括文本和数据。

    Con :因为该技术使用base64编码,大图片会真正膨胀需要传输到客户端的数据大小。某些旧版浏览器不支持此功能。#

    1. 创建一个单独的php文件,该文件将图像ID作为get参数,从数据库中检索图像,设置正确的mime标头,并将图像数据发送到客户端。主php文件仅生成页面的文本内容,并且对于每个图像,只需在img标记的src属性中创建一个引用,将其发送到另一个将图像发送到客户端的php文件。
    2. Pro :需要较少的数据传输到客户端,浏览器可以并行下载图像。

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

      有关此选项的问题可以在here

      找到