数据库中的存储图像不会显示在页面上

时间:2015-07-05 16:49:57

标签: php mysql image jpeg

图像存储在数据库中(如varchar(255)),但在页面上没有显示。

这是存储图像的代码,并将图像放在文件夹中:

if (isset($_FILES["image"])) {
    $title = date("dmyHms") . "_" . $_FILES["image"]["name"];
    $path = "img/profile/" . $_POST["id"] . "_" . $title;
    move_uploaded_file($_FILES["image"]["tmp_name"], $path);

}

这是显示图像:

foreach ($conn->results() as $conn):
    $img = $_SERVER["CONTEXT_DOCUMENT_ROOT"] . $path . "img/profile" . $conn->id . "_" . $conn->image;
    if (file_exists($img)) {
    $image = $path . "img/profile/" . $conn->id . "_" . $conn->image;
    } else {
    $image = $path . "img/noimage.png";
    }
<?php endforeach; ?>

当我print_r $ img时,它显示图像的正确路径,并且不显示静止图像。

显示:

<?php echo $image; ?>

2 个答案:

答案 0 :(得分:0)

以下行不正确:

foreach ($conn->results() as $conn):

不要覆盖$conn。将变量更改为不同的变体,如$result

答案 1 :(得分:0)

你在哪里回应你的形象?如果它在foreach中,你需要稍微改变你的代码...

$image = '<img src="'.$path . "img/profile/" . $conn->id . "_" . $conn->image . '" />';

希望,能为你完美工作...... TQ