首页 > 解决方案 > 无法显示数据库中的图像

问题描述

我正在尝试显示数据库中的图像,但图像没有上传到网站上。对于用于将图像(产品)上传到数据库的表单,我有以下代码:`

插入新产品

产品名称:

                <tr>
                    <td align="right">Product Category:</td>
                    <td><select class="formInput" name="product_cat" class="selectCategory">
                            <option class="formOption">Select a Category</option>
                            <?php
                    $get_cats ="select * from categories";
                    $run_cats = mysqli_query($con, $get_cats);
                    while ($row_cats = mysqli_fetch_array($run_cats)) {
                      $cat_id = $row_cats['cat_id'];
                      $cat_title = $row_cats['cat_title'];
                      echo "<option class='formOption' value='$cat_id'>$cat_title - Women </option>";
                      }
                      $get_catsMen = "select * from categoriesmen";
                      $run_catsMen = mysqli_query($con, $get_catsMen);
                      while ($row_catsMen = mysqli_fetch_array($run_catsMen)) {
                        $catMen_id = $row_catsMen['catMen_id'];
                        $catMen_title = $row_catsMen['catMen_title'];
                        echo "<option class='formOption' value='$catMen_id'>$catMen_title - Men </option>";
                      }
                      $get_accessories = "select * from categoryaccessories";
                      $run_accessories = mysqli_query($con, $get_accessories);
                      while ($row_accessories = mysqli_fetch_array($run_accessories)) {
                        $catAccessories_id = $row_accessories['catAccessories_id'];
                        $catAccessories_title = $row_accessories['catAccessories_title'];
                        echo "<option class='formOption' value='$catAccessories_id'>$catAccessories_title </option>";
                      }
                      $get_souvenirs = "select * from categorysouvenirs";
                      $run_souvenirs = mysqli_query($con, $get_souvenirs);
                      while ($row_souvenirs = mysqli_fetch_array($run_souvenirs)) {
                        $catSouvenirs_id = $row_souvenirs['catSouvenirs_id'];
                        $catSouvenirs_title = $row_souvenirs['catSouvenirs_title'];
                        echo "<option class='formOption' value='$catSouvenirs_id'>$catSouvenirs_title </option>";
                      }
                  ?>
                        </select>
                    </td>
                </tr>

                <tr>
                    <td align="right">Product Image:</td>
                    <td><input type="file" name="product_image"/></td>
                </tr>

                <tr>
                    <td align="right">Product Price: </td>
                    <td><input class="formInput" type="text" name="product_price" required /></td>
                </tr>

                <tr>
                    <td align="right">Product Description:</td>
                    <td><textarea class="formInput" name="product_description" cols="20" rows="10"></textarea></td>
                </tr>

                <tr>
                    <td align="right">Product Keywords: </td>
                    <td><input class="formInput" type="text" name="product_keywords" required /></td>
                </tr>

                <tr align="center">
                    <td colspan="7"><input class="submitProduct" type="submit" name="insert_post"
                            value="Insert Product" /></td>
                </tr>
            </table>
        </form>
    </div>
</div>
</body>
</html>
<?php
  if(isset($_POST['insert_post'])){
    $product_title = $_POST['product_title'];
    $product_cat = $_POST['product_cat'];
    $product_price = $_POST['product_price'];
    $product_desc = trim(mysqli_real_escape_string($con, $_POST['product_description']));
    $product_keywords = $_POST['product_keywords'];

    $product_image = $_FILES['product_image'] ['name'];
    $product_image_tmp = $_FILES['product_image'] ['tmp_name'];

    move_uploaded_file($product_image_tmp,"imgs/uploaded/$product_image");
    $insert_product = "insert into products (product_cat, product_title, product_price, product_desc, product_image, product_keywords) VALUES('$product_cat', '$product_title','$product_price','$product_desc', ' $product_image', '$product_keywords')";
  
    $insert_pro = mysqli_query($con, $insert_product);
    if ($insert_pro) {
      
      echo "<script>alert('Product Has Been inserted successfuly!')</script>";
    }
  } ?>`

下面的代码是我用来在页面上显示产品的代码。我得到的只是文本“没有要显示的图像”。我有产品的名称和价格,但没有图片。你能帮我解决这个问题吗?

<div id="content_area">
    <div id="products_box">
        <?php
            $get_pro = " select * from products order by RAND() LIMIT 0,6";
            $run_pro = mysqli_query($con, $get_pro);

            while($row_pro = mysqli_fetch_array($run_pro)){
                $pro_id = $row_pro['product_id'];
                $pro_cat = $row_pro['product_cat'];
                $pro_title = $row_pro['product_title'];
                $pro_price = $row_pro['product_price'];
                $pro_image = $row_pro['product_image'];

                echo "
                <div id ='single_product'>
                    <h3>$pro_title</h3>
                    <img src='imgs/uploaded/$pro_image' width='180' height='180' alt='no image to display'/>
                    <p><b> Price: $pro_price €&lt;/b></p>
                    <a href='details.php?pro_id=$pro_id'> Details</a>
                </div>
                ";
            }
        ?>
    </div>
</div>

标签: databaseimageuploaddisplay

解决方案


推荐阅读