无法显示MySQL数据库中的图像

时间:2017-05-06 15:31:30

标签: php mysql

我的问题是我的代码只显示我的数据库中的一个图像。我将id更改为另一行,名称和其他所有内容都很好,但图像不会加载。即使我上传了新图片,这仍然会发生吗?请帮忙!

<?php
session_start();
$user = $_SESSION['username'];
if(!empty($_SESSION['loggedin'])) { 


$id = $_GET['id'];
$conn = new PDO ("mysql:host=localhost;dbname=project", "root", 
"pass");
$stmt = $conn->prepare("SELECT * FROM images where id = :id");
try {
$stmt->bindParam(':id', $id);
$stmt->execute();


while ($row = $stmt->fetch())
{
    if($row == false)
    {
        echo "Sorry nothing here!";
    }
    else {
        echo "$row[title]";
        echo '<img src="data:image/jpeg;base64,' . base64_encode( $row['image'] ) . '" />';
        echo "$row[username]";
        echo "$row[description]";
        echo "$row[category]";
    }
}
}
catch (PDOException $e) {
    echo 'Connection failed: ' . $e->getMessage();
    }
?>

可能导致这种情况的原因是什么?图像存储为长blob,其文件类型在jpg,jpeg,png和gif之间变化。 我也尝试了以下仍然与上面相同的工作:

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

0 个答案:

没有答案