php<ul> 无序列表,PHP – 简单嵌套无序列表(UL)数组

我在stackoverflow上看到了这个嵌套的UL数组问题的一些变体,但我认为我的比其他更简单.我正在寻找一个简单的数组循环,允许无限量的主题(父母)与无限量的项目(儿童),如:

  • Topic
    • Item
    • Item
    • Item
    • Item

我用以下代码尝试了这个:

$result = mysql_query("SELECT * FROM News");

$topicname = false;

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

if (!$row['TopicID']) {

$row['TopicName'] = 'Sort Me';

}

if ($topicname != $row['TopicName']) {

echo '

  • ' . $row['TopicName'] . '
    • ';

$topicname = $row['TopicName'];

}

echo '';

echo '

' . $row['NewsID'] . '"';

echo '';

}

if ($topicname != $row['TopicName']) {

echo '

';

$topicname = $row['TopicName'];

}

?>

上面的代码呈现如下:

* Topic A

o News 1

o News ...

o News 51000

+ Topic B

# News 1

# News ...

# News 51000

* Topic C

o News 1

o News ...

o News 51000

+ Topic D

# News 1

# News ...

# News 51000

希望代码呈现以下内容:

* Topic A

o News 1

o News ...

o News 51000

* Topic B

o News 1

o News ...

o News 51000

* Topic C

o News 1

o News ...

o News 51000

* Topic D

o News 1

o News ...

o News 51000

任何想法将不胜感激!

马克解决的问题;有可能解决这个相关的问题吗?

嗨Mark:是的,这就行了!非常有帮助,谢谢.我想知道你是否能够帮助我把它带到另一个复杂程度.如果你认为在这个问题中提出问题是不合适的,请告诉我,我会另外提出,但你的代码是可靠的,所以我想我会跟进它.

使用上面相同的代码,我希望通过选择1列,2列,3列,4列,5列等(最多10个)为用户提供查看数据的选项.数据行将被分成单独的DIV标记,行计数将包括主题和新闻项.我将使用我的CSS控制DIV标签,但我想将行计数均匀地分组到指定数量的列的DIV标签中.我希望儿童新闻项目不要与其父母和群体分开,以尽可能地分开.如果有一个断点,其中1列可以比另一列长,并且它是偶数/任意的,优先级将转到最左边的列,如:这个迷你插图:

XXX

XX

X

我不知道这有多清楚,所以这里有一个例子.如果用户选择1列,他们将看到以下30行“数据”:

* Topic A

o News 1

o News 2

o News 3

* Topic B

o News 1

o News 2

o News 3

o News 4

* Topic C

o News 1

o News 2

o News 3

o News 4

o News 5

* Topic D

o News 1

o News 2

o News 3

* Topic E

o News 1

o News 2

o News 3

o News 4

* Topic F

o News 1

o News 2

o News 3

o News 4

o News 5

如果用户选择2列,他们会看到以下30行“数据”分为2组,每组包含DIV标签.巧合的是,这种情况很好地解决了:

* Topic A * Topic D

o News 1 o News 1

o News 2 o News 2

o News 3 o News 3

* Topic B * Topic E

o News 1 o News 1

o News 2 o News 2

o News 3 o News 3

o News 4 o News 4

* Topic C * Topic F

o News 1 o News 1

o News 2 o News 2

o News 3 o News 3

o News 4 o News 4

o News 5 o News 5

如果用户选择3列,他们会看到以下30行“数据”分为3组,每组包含DIV标签.间距开始变得棘手,我愿意接受建议.

* Topic A * Topic C * Topic E

o News 1 o News 1 o News 1

o News 2 o News 2 o News 2

o News 3 o News 3 o News 3

* Topic B o News 4 o News 4

o News 1 o News 5 * Topic F

o News 2 * Topic D o News 1

o News 3 o News 1 o News 2

o News 4 o News 2 o News 3

o News 3 o News 4
o News 5

如果用户选择4列,他们会看到以下30行“数据”分为4组,每组包含DIV标签.同样,我甚至不知道如何为我的插图手动分配它,但是让孩子们留在父母身边很重要.

* Topic A * Topic C * Topic D * Topic F

o News 1 o News 1 o News 1 o News 1

o News 2 o News 2 o News 2 o News 2

o News 3 o News 3 o News 3 o News 3

* Topic B o News 4 * Topic E o News 4

o News 1 o News 5 o News 1 o News 5

o News 2

o News 2

o News 3 o News 3

o News 4 o News 4

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值