使用php显示动态图像

使用php显示动态图像,php,image,Php,Image,我正在尝试使用php根据项目的id显示图像。这是一个电子商务商店,我有困难弄清楚它然而。这是我的php: <?php $product_list = ""; $sql = mysql_query("SELECT * FROM products ORDER BY date_added DESC"); $productCount = mysql_num_rows($sql); if ($productCount > 0) {

我正在尝试使用php根据项目的id显示图像。这是一个电子商务商店,我有困难弄清楚它然而。这是我的php:

     <?php 
     $product_list = "";
     $sql = mysql_query("SELECT * FROM products ORDER BY date_added DESC");
     $productCount = mysql_num_rows($sql);
     if ($productCount > 0) {
         while($row = mysql_fetch_array($sql)){ 
             $pid = $row['id'];
             $product_name = $row["product_name"];
             $price = $row["price"];
             $date_added = strftime("%b %d, %Y", strtotime($row["date_added"]));
             $product_list .= "HERE IS WHERE THE IMAGE  &nbsp; <strong>$product_name</strong> - $$price - <em>Added $date_added</em> &nbsp; &nbsp; &nbsp; <a href='inventory_edit.php?pid=$id'>edit</a> &bull; <a href='inventory_list.php?deleteid=$id'>delete</a><br />";
         }
     } else {
         $product_list = "You have no products listed in your store yet";
     }
?>

所以理论上,只要有产品id,我就可以使用$pid获取图像。。。那根本不管用。思想?提前谢谢

我看到您发现您的图像实际上不在那里,所以我想与您分享一下。您可以很容易地检查此文件是否存在:

if (file_exists ('../inventory_images/' . $pid . '.jpg')) {
  $product_image = '<img src="../inventory_images/' . $pid . '.jpg">';
} else {
  $product_image = '<img src="../inventory_images/image_not_found.jpg">';
}
if(文件存在('../inventory\u images/'.$pid..jpg')){
$product_image='';
}否则{
$product_image='';
}
然后只需在需要的$product\列表中使用$product\图像变量。您还可以修改else语句并进行一些错误处理(更新数据库中的字段、向您发送电子邮件等)


希望这能有所帮助。

看起来您的输出中也有错误,您能尝试替换该行吗:

$product_list .= "HERE IS WHERE THE IMAGE  &nbsp; <strong>$product_name</strong> - $$price - <em>Added $date_added</em> &nbsp; &nbsp; &nbsp; <a href='inventory_edit.php?pid=$id'>edit</a> &bull; <a href='inventory_list.php?deleteid=$id'>delete</a><br />";
$product_list .= "HERE IS WHERE THE IMAGE  &nbsp; <strong>$product_name</strong> - \$$price - <em>Added $date_added</em> &nbsp; &nbsp; &nbsp; <a href='inventory_edit.php?pid=$pid'>edit</a> &bull; <a href='inventory_list.php?deleteid=$pid'>delete</a><br />";
$product\u list.=“这里是图像的位置$product\u name-$$price-ADTED$date\u ADTED&bull;
”;
用这句话:

$product_list .= "HERE IS WHERE THE IMAGE  &nbsp; <strong>$product_name</strong> - $$price - <em>Added $date_added</em> &nbsp; &nbsp; &nbsp; <a href='inventory_edit.php?pid=$id'>edit</a> &bull; <a href='inventory_list.php?deleteid=$id'>delete</a><br />";
$product_list .= "HERE IS WHERE THE IMAGE  &nbsp; <strong>$product_name</strong> - \$$price - <em>Added $date_added</em> &nbsp; &nbsp; &nbsp; <a href='inventory_edit.php?pid=$pid'>edit</a> &bull; <a href='inventory_list.php?deleteid=$pid'>delete</a><br />";
$product\u list.=“这里是图像$product\u name-\$$price-Added$date\u Added&bull;
”的位置;
您能否确认使用../快捷方式可以访问保存图像的目录?您是否也尝试将该路径放入浏览器以查看图像是否加载?检查您的代码输出的HTML以确保它是您认为它输出的内容-首先,您正在使用图像的相对链接,那么可能它在错误的目录中查找?您是否尝试回显行变量$product_list以查看标记中包含的内容?如果是这样,那是什么?我只是在文件夹中查找,测试图像不在那里,所以我猜它没有按应该的方式上传。其他所有内容都在数据库中,这是正确的。所以错误一定是在问题本身的最后一点php中,让我试着找出错误是什么,但非常感谢帮助。@NaturalBornCamper这是一个盒子,里面有“图像”字样,但没有实际的图像。这很好,我真的很欣赏,但目前我仍在研究如何将其放入文件夹,我不知道应该将图像上传到该文件的代码有什么问题。如果你也能帮忙的话,我将非常感激。没问题。您确信您对路径的引用是正确的吗?换句话说,您运行的脚本是否具有对“../inventory\u images/”的写入权限?我尝试了直接路径和相对路径,这两种格式的路径都是正确的。将此置于脚本之上,它将报告所有错误,并可能为您提供更多信息:错误报告(E\u all);ini设置(“显示错误”,1);查看$\u FILES变量中的内容会有所帮助,您能告诉我们var\u dump($\u FILES)显示了什么吗;其他所有输出都正确,我能问一下“\”应该有什么区别吗?不仅如此,它还是$id变量而不是$pid,这正常吗$$价格也是一个可变因素:因此反斜杠表示忽略第一个美元符号。