图像到第一行

时间:2011-03-02 13:56:24

标签: php mysql css

运行一个mysql查询,返回具有每日高分的用户。

这是显示高分的php文件:

<table border="0" width="100%"><?php echo highscore()?>
    </table>

这是处理mysql查询的php(高分函数):

echo '<tr>';
    echo '<td>'.$user.'</td><td align="right">'.$score.'</td>';
    echo '</tr>';

我所拥有的mysql查询会导致得分最高的用户位于上面显示的表格之上。

现在我想为拥有最多积分的用户添加一个王冠。

问题是如何将图像(crown .png)添加到第一行,即得分最高的用户。

提前致谢。

4 个答案:

答案 0 :(得分:1)

我假设您按分数DESC订购用户。

$set = 0;
while() {
    echo '<tr';
    echo '<td>';
    if(!$set) {
        echo '<img src="crown.png" alt="crown" />';
    }

    // ... the rest of the code

    $set = 1;
}

答案 1 :(得分:0)

if (empty($notfirst)){
  echo "crown";
  $notfirst=1;
}

答案 2 :(得分:0)

根据您提供的代码,我只看到一个快速而肮脏的解决方案。

我猜你在循环中调用这段代码?

echo '<tr>';
echo '<td>'.$user.'</td><td align="right">'.$score.'</td>';
echo '</tr>';

所以只需在开始循环之前声明一个变量:

$first = true;

然后在你的循环中,将代码更改为:

echo '<tr>';
echo '<td>'.$user.'</td><td align="right">'.$score.'</td><td>'.$first?'<img src=\"crown.png\" />':''.'</td>';
echo '</tr>';
$first = false;

答案 3 :(得分:0)

如果你想这样做,你可以制作你的桌子,并使用CSS3的新:first-child伪选择器将冠作为背景图像添加到第一行。

table tr:first-child { background: url("crown.gif") no-repeat; }