5

我有一个包含电影名称、描述和封面图片的数据库。封面图片字段类型为 blob,问题是我无法从数据库中检索它。我想在他们旁边的封面图片上显示电影名称……怎么做……这是我的代码……

<?php

include ("php/connection.php");
$ID = $_GET['id'];
$listmovies = "SELECT * FROM movies where Genres LIKE '%$ID%'";
$result = mysql_query($listmovies);
while ( $row = mysql_fetch_assoc($result) ) {
    ?>
<table border="1" width="100%">
    <tr>
        <td rowspan="2" width="90" height="120">
<?php

    // set the header for the image
    header("Content-type: image/jpeg");
    echo $row['Image'];

    ?> </td>
        <td width="200" height="10">
<?php

    echo $row['Title'];
    ?></td>
    </tr>
    <tr>
        <td width="200" height="110"><a
            href="php/moredetails.php?id=<?php echo $row['ID']; ?>">More Detail</a></td>
    </tr>
<?php } ?> </table>

我只想在电影标题旁边显示 The Imgaes?

4

2 回答 2

2

是的,它不会显示,因为any output above header would always generate error......你需要有一个不同的页面来输出你的图像或包含它有base64图像

消除

header("Content-type: image/jpeg");
echo $row['Image'];

并添加:

printf("<img src=\"data:image/jpeg;base64,%s\" />",base64_encode($row['Image']));  
                               ^--- Note this is only for jpeg images
于 2012-10-17T15:53:48.200 回答
0

我建议这样的事情:

制作一个名为 image.php 的新 php 文件;该文件将替换物理图像文件。在该文件中,您将帖子中的代码加上一些逻辑以从数据库中获取图像数据;

在父模板(可能是 php 文件)中,您为图像添加代码:

<img src="image.php?id_movie=<?php echo $id_movie; ?>" width ="200" height="200" /> More Detail

在 image.php 中,我建议小心 php 标签之外的空格(在开头和结尾处)。同样对于 image.php,您需要提供电影的 id 以了解要从数据库加载的图像。

于 2012-10-17T15:37:59.447 回答