由php生成的有序列表不起作用

时间:2013-03-04 23:58:31

标签: php html list html-lists

<ol>
    <?php foreach ($articles as $article) { //start of the loop
        ?> //interruption to allow html to be passed rather than echoed
           <h3><li>
           <a href="article.php?id=<?php echo $article['article_id']; ?>"><?php echo $article['article_title']; ?></a>
           <small> &nbsp; postat la     
               <?php 
                   echo date('d.m.Y', $article['article_timestamp']);
               ?>
           </small>
          </li></h3>
         <?php //'starting' php again to close the loop
    } ?> //closing loop and coming back to html to allow closing the </ol>
</ol>

但我仍然不知道为什么我没有从数据库中获取元素。

我得到的结果如下:

“1”。 Lorem Ipsum postat la 28.02.2013

“1”。一些文字帖子la 28.02.2013(我已经在它们周围加上引号,因为stackoverflow似乎默认自动增加它)

而不是

  1. Lorem Ipsum postat la 28.02.2013
  2. 一些文字邮寄la 28.02.2013
  3. 虽然Chrome显示它应该(1和2)但Opera和Internet Explorer会为每个条目显示1。谢谢!

3 个答案:

答案 0 :(得分:4)

取走H3标签,你会没事的!

您不应将LI代码与ULOL以外的其他代码包装在一起。

答案 1 :(得分:1)

问题出在<h3>之前打开的<li>标记中,列表架构为

<ol>
  <li>...</li>
</ol>

将您的HTML更改为

...
<ol>
    <li><h3>...</h3></li>
</ol>
...

答案 2 :(得分:-5)

不是因为<ol> tag尝试ul而是因为它。 - 使用<?php foreach ($articles as $i = >$article)并显示<?= $i ?>