0

アイテムのIDに基づいて画像を表示するためにphpを使用しようとしています。これはeコマースストア用ですが、理解するのに苦労しています。これは私が持っている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";
     }
?>

理論的には、ここに画像が使用される場所にテキストを追加しようとしていました。

    <img src='../inventory_images/$pid.jpg' />

しかし、私が試したこのバリエーションや他のバリエーションは機能しませんでした。画像のアップロード方法は、変数「$ pid」が商品のIDであり、末尾に.jpgが追加されていることです。これを説明するコードは、次のとおりです。

    $pid = mysql_insert_id();
    $newname = "$pid.jpg";
    move_uploaded_file( $_FILES['fileField']['tmp_name'], "../inventory_images/$newname");

したがって、理論的には、製品IDを取得するだけで、$pidを使用して画像を取得できます...これは機能していません。アイデア?前もって感謝します!

4

2 に答える 2

1

あなたはあなたのイメージが実際にはそこにないことを発見したので、これをあなたと共有したいと思いました。このファイルが非常に簡単に存在するかどうかを確認できます。

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">';
}

次に、その$product_image変数を$product_listの必要な場所で使用します。elseステートメントを変更して、エラー処理を行うこともできます(DBのフィールドを更新したり、電子メールを送信したりするなど)。

お役に立てれば。

于 2012-06-18T19:39:09.350 に答える
1

出力にもエラーがあるようです。その行を置き換えてみてください。

$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 />";
于 2012-06-18T20:14:09.960 に答える