到目前为止,我真的不知道如何在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表中,则有两个选项:
- 您可以在img标记的src属性中使用data-uris-int,该属性将包含base64编码的图像数据。有关此技术的概述,请参阅css-trcks.com上的DataURI文章。你也可以在这里找到一个SO帖子和代码
Pro:您可以通过运行单个php代码生成完整的页面,包括文本和数据。
Con:因为该技术使用base64编码,所以大图片确实会增加需要传输到客户端的数据的大小。一些较旧的浏览器不支持此功能。#
- 创建一个单独的php文件,该文件以image id作为get参数,从数据库中检索图像,设置正确的mime头,并将图像数据发送到客户端。主php文件只生成页面的文本内容,对于每个图像,只需在img标记的src属性中创建一个对将图像发送到客户端的其他php文件的引用
Pro:需要较少的数据传输到客户端,浏览器可以并行下载图像。
Con:您需要分离文本和图像输出的生成。
因此,有关此选项的问题可以在此处找到