MySQL / PHP背景图片URL

时间:2014-12-28 15:28:34

标签: php mysql

我正在尝试设置一个基本脚本来显示MySQL表中的前5个投票。我按照我想要的顺序显示它,但我似乎无法添加背景图像。我希望它看起来像这样:

What I am after

但我得到的输出是:

What I actually get

我的代码:

<!doctype html>

<html lang="en">
<head>
  <meta charset="utf-8">

  <title>Top 5 Voters</title>
  <meta name="description" content="">
  <meta name="author" content="">

  <link rel="stylesheet" href="style.css">

  <!--[if lt IE 9]>
  <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
  <![endif]-->
</head>

<body>
<?php

   $server = "localhost";
   $dbuser = "xxx";
   $dbpass = "xxxx";
   $dbname = "xxxx";

mysql_connect($server, $dbuser, $dbpass);
mysql_select_db($dbname);

$result = mysql_query("SELECT * FROM votes_hub_galtotals ORDER BY votes DESC LIMIT 5");

while($row = mysql_fetch_assoc($result)){

    echo '<ul class="serverList">';
        echo '<li class="server"><a href=""><span class="serverIcon" style="background-image: url("http://i.fishbans.com/helm/'.$row['IGN'].'/48");"></span>'.$row['IGN'].' ('.$row['votes'].')</a></li>';
    echo "</ul>";

    ; }
?>

</body>
</html>

即使我将其设置为静态图像,它也不起作用。

1 个答案:

答案 0 :(得分:0)

首先,您的查询是正确的,并且您的列表具有正确的顺序。另一件事是如果你有一个完整的列表它会更好,所以在while循环之前和之后放置ul,你在迭代后有一个完整的列表。

echo '<ul class="serverList">';

while($row = mysql_fetch_assoc($result)){
   echo '<li class="server"><a href=""><span class="serverIcon" style="background-image: url("http://i.fishbans.com/helm/'.$row['IGN'].'/48");"></span>'.$row['IGN'].' ('.$row['votes'].')</a></li>';       
}
echo "</ul>";
?>

因此,图像未显示,因为路径不正确或元素不可见。

您将图像设置为背景图像。它是一个跨度,它可能你没有设置该元素的高度和宽度,这就是为什么它没有显示。使用<img元素显示图像。

最后一个是mysql函数已被弃用,您应该使用mysqliPDO准备好的语句。