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

问题描述

我有一个表单,可以提交文本,当然还有我的图像文件到我的数据库,同时将图像移动到永久目录。

我遇到的问题是当我从数据库中提取并显示内容时,除了图像文件之外,所有内容都显示出来。

图片用于更好的上下文 数据库条目最终结果

HTML 表单

<?php
    include("inc/dbconfig.php");
    error_reporting(0);


    if (isset($_POST['btn-signup'])){
        //Text Data Input
        $cardName = $_POST['cardName'];
        $cardSet = $_POST['cardSet'];
        $cardRarity = $_POST['cardRarity'];

        $cardImg = $_FILES['cardImage']["name"];
        move_uploaded_file($_FILES["cardImage"]["tmp_name"],"../".$_FILES["cardImage"]["name"]);

        $cardImgPath = "media/images/userUpload/".$_FILES["cardImage"]["name"];

        $mysqlQ =("INSERT INTO cards (cardName, cardSet, cardRarity, cardImage) VALUES ('$cardName', '$cardSet', '$cardRarity', '$cardImgPath')");
        mysqli_query($conn,$mysqlQ);

        header('Location: directory.php');
    }
    exit();
?>

显示数据

<?php function itemCard (array $row) { ?>
    <div class="card" style="width: 18rem;">
        <img class="card-img-top" src="<?php echo '../'. $row['cardImage']?>" alt="Card fsa cap">
        <div class="card-body">
            <h5 class="card-title"><?= $row["cardName"]?></h5>
            <p class="card-text">Card Set: <b><?= $row["cardSet"]?></b></p>
            <p class="card-text">Card Rarity: <b><?= $row["cardRarity"]?></p>
        </div>
    </div>
<?php } ?>

标签: phpmysql

解决方案


你能确认我你上传的图片存储在文件夹中,否则按照步骤操作

  1. 使用 $_SERVER['DOCUMENT_ROOT'] 路径而不是 '../'。
  2. 那个图像移动的文件夹有写权限(777)?

推荐阅读