【发布时间】:2019-07-05 10:31:10
【问题描述】:
我的代码有一个小问题。 我正在尝试使用 php (pdo) 在我的主页上显示我的数据库中的图像。 问题是:我真的不知道如何在 HTML img 标签中插入图像的变量。 我的错误在哪里/我该如何解决?
我将 mysql 数据库中的图像保存为 blob (largeblob),所有图像都是 .jpg 和/或 .png
<?php
$db = new Dbh;
$pdo = $db->connect();
$counter = 0;
$content = "";
$statement = $pdo->prepare('SELECT * FROM images');
$statement->execute();
while ($row = $statement->fetch()) { ?>
<img src = "<?php echo $row['image']; ?>">
<?php }
?>
现在发生的事情是,html只是显示了某种充满奇怪符号的位代码
提前感谢您的帮助!
【问题讨论】:
-
假设为 jpeg,根据需要进行更改。
echo '<img src="data:image/jpeg;base64,'.base64_encode($row['image']).'"/>'; -
如果您的图像被存储为 blob,
src属性将无法正常工作。这是一种使用 javascript 呈现 blob 图像的方法:stackoverflow.com/questions/7650587/…。请注意,使用id作为选择器,因为此示例在循环结构中不起作用,因此您可能希望使用一个类来代替,并动态设置一个递增每个循环迭代的类标识符(例如,$classname = 'myimage-' . $i++;)跨度>