0

我最近调整了一个分页脚本来显示我的 mySQL 数据库。它看起来相当不错,但我想改变一件事。

这是脚本现在的样子:http: //gyazo.com/7ef0d74caa781ab3e5f72a9935bcd7d0.png

它看起来不错,但右边有很多额外的空间。所以我想我想在右边添加同样的东西,另外两列包含更多信息。在这种情况下,只有 15 个,但这样做之后页面上将有 45 个结果。现在这是我的脚本中最重要的部分:

<?php
    while($row = mysql_fetch_array($result))
    {
    echo "<div id='matchcall' style='float: left'>$row[winner] vs $row[loser] ($row[matches])<br />";

    }
?>

现在,请注意我的限制为每页 15 个,但是,如果我这样做,我可以将其乘以 3,并且每页包含更多信息。我想到了解决它的方法,我唯一体面的方法是:

        if ($row['id'] == 15){
        echo "</div><div style='float: left'>
                    $row[winner] vs $row[loser] ($row[matches])<br />
    }

但是,这根本行不通,因为它只会影响前 15 个结果,并且不会继续向右浮动接下来的 15 个结果。所以我意识到我需要一种方法让它识别 15 中的变化并继续进行。任何人都可以对这个主题有所了解吗?

4

2 回答 2

0

你需要一个模数。关于如何使用它们 如何在 div 中迭代 foreach?

于 2013-10-14T02:13:02.900 回答
0

如果我是你,我会使用表格来显示这些结果:

<table>
    <tr>
        <td>Result1</td>
        <td>Result2</td>
        <td>Result3</td>
    </tr>
    <tr>
        <!--td columns for the results of the second row-->
    </tr>
    <!--And 13 more rows... -->
</table>

注意:切勿对多个 html 标签使用相同的 id,这是一种非常糟糕的做法。

id='matchcall'

重复。利用

class='matchall'

如果您需要相同的值。

这就是您生成表格的方式(我不是为您设计,但您会明白的):

<?php
    $myTable = "<table>";
    $index = 0;
    while($row = mysql_fetch_array($result))
    {
        $modulo = $index % 3;
        if ($modulo === 0) {
            $myTable .= "<tr>";
        } else if ($modulo === 2) {
            $myTable .= "</tr>";
        }
        $myTable .= "<td><div class='matchall'>$row[winner] vs $row[loser] ($row[matches])</div></td>";
        $index++;
    }
    $myTable .= "</table>";
    echo $myTable;
?>

没有时间测试它,但你抓住了我的想法。

于 2013-10-14T03:26:09.020 回答