PHP图像mysql在base64解码后不能正常显示


php images mysql not displaying properly after base64 decode

我试图将图像上传到mySQL数据库,然后将它们检索到评论中。然而,由于某些原因,图像不会正确显示(有时只有部分),所以我想我做错了。我很感激你的帮助。

<标题> kritiek.php h1> 的形式
<form action="post_comment.php"  method="POST" id="post-comment" enctype="multipart/form-data">
  <fieldset>
    <legend>Reactie plaatsen.</legend>
    <input type="text" name="name" required placeholder=" Naam">
    <br>
    <input type="text" name="captcha" id="commentCaptcha" placeholder=" captcha">
    <br>
    <textarea name="comment" cols="50" rows="4" maxlength="999" required placeholder=" Laat een reactie achter.."></textarea>
    <br>
    Profiel Foto: <input type="file" name="image" accept="image/*">
    <br><br>
    <input type="submit" value="Add comment">
    </fieldset>
</form>


获取评论

<section id="comments_section">
    <?php
    $con = mysqli_connect("Host","Username","Password","Database");
    // Check connection
    if (mysqli_connect_errno())
    {
        echo "Failed to connect to MySQL: " . mysqli_connect_error();
    }
    $query = "SELECT * FROM Comments_table";
    $result = mysqli_query($con, $query) or die("Error: ".mysqli_error($con));
    while($row = mysqli_fetch_array($result)) {
        $img=base64_encode($row['image']);
        $date = $row['date'];
        ?>
        <div class="comment">
            <?php
            echo "<br>" . displayImage($img) . "<br>" . $row['name'] . "<br><br>" . $row['comments'] . "<br><br>" . $date . "<br><br>";
            ?>
        </div>
    <?php
    }
    mysqli_close($con);
    function displayImage(&$link){
        if(!empty($link)){
            return "<img alt='"Profile Picture'" src='"data:image/*;charset=utf8;base64, $link '">";
        }
        else
        {
            return "<img src='img/nopicture.jpg'>";
        }
    }
    ?>
</section>




<标题> post_comment.php h1>


<标题> mySQL数据库h1> 格截图
表格内容截图

发现它加载不正确的问题,问题是mySQL行被设置为blob而不是longblob,所有图像的最大大小都是确切的63.9 kb,所以很明显是什么错了