php - 动态加载 <ul> 并排序为 5 行的列

标签 php html html-lists

好吧,我想我会把这个放在那里。我的数据库中有一个包含 25 个条目的列表,我想在我的页面上以列表形式显示在 5 列 5 行中。

我准备了一个解决方案,尽管不是那么优雅。

<?php

                            $query = "SELECT * FROM city ORDER BY name ASC";
                            $result = mysql_query($query, $connection);
                            confirm_query($result);

                            echo "<ul class=\"floatleft\">";

                            $counter = 1;
                            while ($row = mysql_fetch_array($result)) {

                            if ($counter <= 5) {

                                    echo "<li>{$row["name"]}</li>";
                                    $counter = $counter + 1;

                                        if ($counter == 6) {
                                            echo "</ul>";
                                        }

                                } elseif($counter > 5 && $counter <= 10) {

                                        if ($counter == 6){
                                            echo "<ul class=\"floatleft\">";
                                        }
                                    echo "<li>{$row["name"]}</li>";

                                    $counter += 1;

                                        if ($counter == 11) {
                                            echo "</ul>";
                                        }

                                } elseif($counter > 10 && $counter <= 15) {

                                        if ($counter == 11){
                                            echo "<ul class=\"floatleft\">";
                                        }

                                    echo "<li>{$row["name"]}</li>";

                                    $counter += 1;

                                        if ($counter == 16) {
                                            echo "</ul>";
                                        }
                                } elseif($counter > 15 && $counter <= 20) {

                                        if($counter == 16){
                                            echo "<ul class=\"floatleft\">";
                                        }

                                    echo "<li>{$row["name"]}</li>";

                                    $counter += 1;

                                        if ($counter == 21) {
                                            echo "</ul>";
                                        }

                                } elseif($counter > 20 && $counter <= 25) {

                                    if($counter == 21){
                                        echo "<ul class=\"floatleft\">";
                                    }

                                echo "<li>{$row["name"]}</li>";

                                    $counter += 1;

                                        if ($counter == 26) {
                                            echo "</ul>";
                                        }

                                }

                            }

                        ?>

这将输出以下内容

<ul class="floatleft">
<li>Belfast</li>
<li>Birmingham</li>
<li>Brighton</li>
<li>Bristol</li>
<li>Cambridge</li>
</ul>
<ul class="floatleft">
<li>Cardiff</li>
<li>Carlisle</li>
<li>Edinburgh</li>
<li>Glasgow</li>
<li>Hull</li>
</ul>
<ul class="floatleft">
<li>Lancaster</li>
<li>Leeds</li>
<li>Leicester</li>
<li>Liverpool</li>
<li>London</li>
</ul>
<ul class="floatleft">
<li>Manchester</li>
<li>Newcastle</li>
<li>Norwich</li>
<li>Nottingham</li>
<li>Oxford</li>
</ul>
<ul class="floatleft">
<li>Plymouth</li>
<li>Portsmouth</li>
<li>Southampton</li>
<li>Swansea</li>
<li>York</li>
</ul>

有人知道更好的方法吗?我对 php 还是个新手,我知道一定有更好、更简洁的方法来执行此操作。

最佳答案

像这样将记录添加到 1 ul 怎么样:

http://jsfiddle.net/RC2jN/

这样如果你添加一个 li 它仍然有效

关于php - 动态加载 <ul> 并排序为 5 行的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5680887/

相关文章:

javascript - 获取 li 元素的 css 显示值

php - MySQL : help with count row function

php - 父名称服务器

php - 使用 PHP 操作 atg Dynamo

javascript - 我正在尝试根据 AJAX 成功调用返回的内容编写条件

css - 互联网浏览器 : Disable Access from Visitors

HTML CSS - Angular 对象具有不锐利的边缘

html - 为什么我的列表左侧比右侧大?

javascript - 如何通过单击按钮动态创建对象

css - 没有背景,IE 悬停不起作用?