php - 从数据库检索时图像损坏

标签 php mysql base64

代码:

$db = mysqli_connect("localhost","root","","photos");

if(isset($_POST['POST'])){

$image = addslashes($_FILES['image']['tmp_name']);
$image_name = addslashes($_FILES['image']['name']);
$image = file_get_contents($image);
$image = base64_encode($image);


$sql = "INSERT INTO imaag ( name ) VALUES ('$image')";
mysqli_query($db,$sql);
}
$res = mysqli_query($db,"SELECT * from imaag");

我在其中获取图像的 div 是:

<div>
    <?php 
    while ($row = mysqli_fetch_array($res)) {

    echo '<img 
 src="data:image/jpeg;base64,"'.base64_encode($row['name']).'/>';
    }?>
</div>

检索时图像已损坏,我不知道图像是否已上传。我认为它没有上传。上传部分出现问题。

最佳答案

因为在检索时您不需要再次base64_encode。只需添加字符串即可。更改您的 echo 如下:

 echo '<img 
 src="data:image/jpeg;base64,'.$row['name'].'"/>';
    }?>

关于php - 从数据库检索时图像损坏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49422735/

相关文章:

PHP:插入到sql中

PHP/MYSQL 统计订单

mysql - 订单表的电子商务数据库设计

javascript - PHP 登录算法不重定向到下一页(不确定是否连接到数据库)

python - sqlite python INSERT IF NOT EXIST 有很多变量

Node.js:使用spawn将图像作为base64传递给python

php - 如何在 PHP 中获取函数的参数名称?

php - 如何在 javascript/jQuery 中调用文本函数?

java - 如何将整数转换为 base64 (0-9A-Za-z)

.net - CSS 中的 Base64 编码图像