回应MySQL数据库PHP

时间:2016-08-11 18:07:32

标签: php mysql image echo

我一直在尝试使用PHP回显数据库中的图像。我在论坛上尝试了各种解决方案但没有成功。我只是得到一个空白图像作为输出。

while($rows=mysqli_fetch_assoc($getquery))
{
    $id=$rows['id'];
    $LastName=$rows['LastName'];
    $FirstName=$rows['FirstName'];
    $Year=$rows['Year'];
    $Press=$rows['Press'];
    $Description=$rows['Description'];
    $Title=$rows['Title'];
    $image=$rows['image'];


    echo '<div class = "paragraph">' . $LastName . '<br/>'. $FirstName . '<br/>' . $Year . '<br/>' .  $Press . '<br/>' . $Title . '<br/>'. $Description . "<img src='image/".$row['image']."' />" . '</div>' ;
}

2 个答案:

答案 0 :(得分:2)

您将图像回显为$row['image'],但之前对图像的唯一引用是$rows['image'](注意s)和$image。更新echo语句以使用其中任何一个而不是$row['image']

修改:这不能完全解决您的问题。正如您对问题的评论中所述,您需要进行一些实际操作以实际显示图像here

答案 1 :(得分:0)

while($rows=mysqli_fetch_assoc($getquery)){
    $id=$rows['id'];

    /*
       assuming the `image` directory is relative to the root
       and not the directory from which the script runs then
       a leading slash might be the issue.
    */
    echo "
    <div id='{$id}' class='paragraph'>
        {$rows['LastName']}<br/>
        {$rows['FirstName']}<br/>
        {$rows['Year']}<br/>
        {$rows['Press']}<br/>
        {$rows['Title']}<br/>
        {$rows['Description']}
        <!--<img src='/image/{$row['image']}' />-->
        <img src='data:image/jpeg;base64, {$rows['image']}' alt='' title='' />
    </div>";
}

如果在将数据保存到数据库时存储图像的mimetype,那么您将替换上面的正确mime / content类型,即:image/pngimage/gif等,这样就可能类似的东西:

<img src='data:{$rows['mimetype']};base64, {$rows['image']}' alt='' title='' />