不能让图像显示在动态页面中


Can't get image to display in dynamic pages

我似乎不能让我的图像显示正确。之前,我使用了下面的代码片段,它工作得很好。

catalog.php(工作正常):

<p class="image">
<a href="synopsis.php?id=<?php echo $row['id']; ?>">
<img src="getImage.php?id=<?php echo $row['id']; ?>" alt="" width="175" height="200" />
</a>
</p>

synopsis.php(根本不显示图像):

<?php
$id = $_GET['id'];
...?>
<p class="image">

<img border="0" class="floatleft" src="getImage.php?id=<?php echo $row['id']; ?>" width="250" height="400" />

<?php echo $row['synopsis']; ?>
</p>

getimage.php:

<?php
$id = $_GET['id'];
$link = mysql_connect("localhost", "root", "");
mysql_select_db("dvddb", $link);
$sql = "SELECT dvdimage_path FROM dvd WHERE id=$id";
$result = mysql_query($sql, $link);
$row = mysql_fetch_assoc($result);
mysql_close($link);
header("Content-type: image/jpeg");
echo file_get_contents($row['dvdimage_path']);
?>

知道为什么我不能显示这个图像吗?

编辑1:所以在调试之后,我得到了一个错误消息:

Undefined index: id in C:'xampp'htdocs'synopsis.php on line 106

所以我在PHP代码echo $row['id']之前添加了以下代码:

<p>getImage.php?id=<?php error_reporting(0); echo $row['id']; ?></p>
然而,

我得到的段落只是getImage.php?id=

然后,我进入了synosis .php -> <img border="0" class="floatleft" src="getImage.php?id=<?php echo $row['id']; ?>

改成:

<img border="0" class="floatleft" src="getImage.php?id=2">

再一次,同样的问题发生了,我不能得到特定的图像。

我怀疑我的getimage.php文件有问题。然而,当我使用这个代码片段时,这个getimage.php文件在其他页面上工作得很好。

我的要求很简单:在catalog.php中,我使用while循环从dvd数据库填充图像和文本。然后,这些图像中的每个都有其特定的主ID。当我点击图片时,它们会转到链接:synopsis.php?id="primaryid"然后,使用这个"primaryid"我应该能够使用getimage.php?"primaryid"用于在summary .php页面上生成图像。

编辑2:实际上,我在某个地方犯了一个语法错误。所以这一行:

<img border="0" class="floatleft" src="getImage.php?id=2">

工作正常,这意味着错误出现在我不能正确返回'id'的地方。

编辑3:

我已经包含了相关源代码的链接:

catalog.php

synopsis.php

getimage.php

sortmenu.css

style.css

XML格式的数据库

问自己的问题:

  1. 真的需要使用php脚本来模拟图像吗?如果没有,只使用图像路径。
  2. 在header()之前是否有任何输出;函数在getimage.php文件?甚至在前面加一个空格
  3. 图像实际上是JPEG吗?
  4. 是否有任何错误出现当你去getimage.php?浏览器中的id= id ?

在synopsis.php中,您正在从查询字符串中获取id,但随后试图使用数据库值。我不能看到你所有的代码,所以我张贴解决方案,以涵盖两种情况

src="getImage.php?id=<?php echo $id; ?>"

src="getImage.php?id=<?php echo $row[$id]; ?>"