gpt4 book ai didi

php - 图像无法从 mysql 数据库正确显示

转载 作者:搜寻专家 更新时间:2023-10-30 23:32:25 25 4
gpt4 key购买 nike

我正在尝试使用 mysql 数据库和 php 在表格中显示图像。我表格中的所有其他信息都显示正常,除了图像,我收到了。

���� JFIF���� ( %!1!1).....383,7*-.7 +%&-----5 ---+--------5-----+--------------------5-/---������". ����B !1A "Qa2

在我的 table 上,这会持续一段时间。在我的数据库中,我将图像设置为 blob 并且没有空值。我正在使用此代码来显示它。

 <?php 
include 'connect.php';
$results = mysqli_query($con, 'select * from products');
?>
<table cellpadding="3" cellspacing ="3" border="0">
<tr>
<th>Image</th>
<th>Name</th>
<th>Description</th>
<th>Price</th>
<th>Buy Product</th>
</tr>
<?php

while($products= mysqli_fetch_object($results)){
if($products->id<=10){?>
<tr>
<td><?php echo $products->images;?></td>
<td><?php echo $products->name;?></td>
<td><?php echo $products->description;?></td>
<td><?php echo $products->price;?></td>
<td><a href="cart.php?id=<?php echo $products->id; ?
>">Add to Cart</a></td>
</tr>
<?php }} ?>
</table>

如有任何帮助,我们将不胜感激。谢谢。

最佳答案

首先我不得不说,将图像数据存储在数据库中可能不是一个好主意,尤其是当您有大量图像时。稍微好一点的方法可能是只存储文件的路径并在您的 html 代码中链接到它。

不管怎样,你有问题,也有解决办法。目前你只是显示 BLOB内容,这是图像的原始二进制数据。要显示图像,您需要 <img>标记正确的来源。

像这样:

<img src="data:image/jpeg;base64,<?= base64_encode($blob) ?>"/>;

在您的确切情况下,它看起来更像这样:

...
<td>
<!-- JPG image -->
<img src="data:image/jpeg;base64,<?= base64_encode($products->images) ?>"/>;
</td>
...

关于php - 图像无法从 mysql 数据库正确显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47628933/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com