mysqli数据库的背景样式

时间:2017-04-13 22:24:26

标签: php html background-image

我试图添加背景图片属性做div。我知道我可以像这样显示数据库中的正常图像:

echo '<img src="data:image/jpeg;base64,'.base64_encode($image).'" />';

但是为div添加背景怎么样?我试过了,我真的做了,但只是我的代码没有用,所以我问怎么做?

这是我的代码:

<?php 
    require_once('config.inc.php');

    $sql = "SELECT id, title, author, image FROM articles ORDER BY count DESC LIMIT 3";
    $result = $mysqli->query($sql);

    if ($result->num_rows > 0) {
        while($row = $result->fetch_assoc()) {
            echo '<a href="'.$row["id"].'">';
                echo '<div class="module" style="background:'.base64_encode($row["image"]).'">';
                  echo '<h3 class="article-title">'.$row["title"].'<br />'.$row["author"].'</h3>';
                echo '</div>';
            echo '</a>';
        }
    } else  echo "Wystąpił błąd z bazą danych";

    $mysqli->close();
?>

2 个答案:

答案 0 :(得分:0)

&#34; DIV&#34;标签不支持base64格式。如果要显示图像,则必须使用CSS的background-image属性。

示例:

<div style="background-image:url(<?=$YourBase64?>);padding:50px;background-size:cover;background-position:center center; background-repeat:no-repeat;"></div>

您可以在https://www.w3schools.com/cssref/pr_background-image.asp

中查看更多相关信息

答案 1 :(得分:-1)

你没有告诉你的CSS使用base64编码的图像,还记得在CSS中你需要url()函数:

echo '<div class="module" style="background-image:url(data:image/jpeg;base64,' . base64_encode($row['image']) . ')">';