互联网浏览器中的图片处理失败

问题描述 投票:0回答:1

如何隐藏显示为''的破损图片图标?https:/www.underconsideration.combrandnewarchivesgoogle_broken_image_00_a_logo.gif'时,没有图片显示?我用php和css创建了一个评论框,允许用户在上传照片的同时留下评论。但是,如果用户只想留下评论而不上传任何照片,如果他们只留下评论而不上传任何照片,评论区就会显示破碎的图片图标。

我应用了 onError='this.style.display ='none';'alt='' 我的脚本上,但仍然没有运气。

以下是我写的代码,当用户留言或上传照片时,显示评论和照片。

function getComments($conn){
    $sql = "SELECT * FROM comments";
    $result = $conn->query($sql);
    while ($row = $result->fetch_assoc()) {
        echo "<div class = 'comment_box'><p>";
            echo "<div class = 'comment_id'><p>";
                echo $row['uid']."<br>";
            echo "</p></div>";
            echo "<div class = 'comment_date'><p>";
                echo $row['date']."<br>";
            echo "</p></div>";
            echo "<div class = 'comment_msg fixed'><p>";                
                echo make_clickable(nl2br($row['message']));
            echo "</p></div>";

            echo "<div id='img_div'>";
                echo "<img class='img_size' src='images/".$row['image']."' onError='this.style.display ='none';' alt='' />";                
            echo "</div>";


        echo "</p>
            <form class='delete-form' method='POST' action='".deleteComments($conn)."'>
                <input type='hidden' name='cid' value='".$row['cid']."'> 
                <button type='submit' name='commentDelete'><img class='img_remove' src='img/remove.png'>REMOVE</button>
            </form>
            <form class='slash-form '>|
            </form>
            <form class='edit-form' method='POST' action='editcomment.php'>
                <input type='hidden' name='cid' value='".$row['cid']."'> 
                <input type='hidden' name='uid' value='".$row['uid']."'> 
                <input type='hidden' name='date' value='".$row['date']."'> 
                <input type='hidden' name='message' value='".$row['message']."'> 
                <button><img class='img_change' src='img/change.png'>EDIT</button>
            </form>         
        </div>";
    }
}

图片图标损坏的问题发生在:

echo "<div id='img_div'>";
    echo "<img class='img_size' src='images/".$row['image']."' onError='this.style.display ='none';' alt='' />";                
echo "</div>";
php css brokenimage
1个回答
0
投票

我不能确定你的数据库是什么样的,但你可以使用类似这样的东西来渲染一个条件块。

if (isset($row['image']) && $row['image'] != '') {
    echo "<div id='img_div'>";
    echo "<img class='img_size' src='images/" . $row['image'] . "' alt='' />";
    echo "</div>";
} else {
    echo "<div id='img_div'>";
    echo "<img class='img_size' src='images/path-to-blank-image.png'alt='' />";
    echo "</div>";
}
© www.soinside.com 2019 - 2024. All rights reserved.