【问题标题】:I have 4 title_announcement. but only one title_announcement appears. how to get all the titles to show up?我有 4 个标题公告。但只出现一个标题公告。如何让所有标题显示?
【发布时间】:2018-04-13 15:22:16
【问题描述】:

我的控制器

$data['judul'] = $this->pengumuman->getJudul($id_announcement);

我的模特

public function getJudul($id_announcement)
    {
        $this->db->select('mp.id_announcement, mp.title_announcement, mp.isi_pengumuman')
        ->from('tbl_mst_pengumuman mp')
        ->order_by('mp.id_announcement','DESC' ,$id_announcement)
        ->limit(3);
        return $this->db->get()->row();
    }

我的看法

<div class="portlet-body">
        <div id="nt-example1-container">
          <ul id="nt-example1" class="news">
            <li>
                <b><a href="<?= site_url('login/pengumuman/detail/'.@$judul->id_announcement); ?>" class="link_pengumuman"><?= $judul->title_announcement ?></a></b>
                <?= $judul->isi_pengumuman ?>
                <li><br>
                <b><a href="<?= site_url('login/pengumuman/detail/'.@$judul->id_announcement); ?>" class="link_pengumuman"><?= $judul->title_announcement ?></a></b>
                <?= $judul->isi_pengumuman ?>
                </li><br>
                 <li>
                <b><a href="<?= site_url('login/pengumuman/detail/'.@$judul->id_announcement); ?>" class="link_pengumuman"><?= $judul->title_announcement ?></a></b>
                <?= $judul->isi_pengumuman ?>
                </li> <br>
                <li>
                <b><a href="<?= site_url('login/pengumuman/detail/'.@$judul->id_announcement); ?>" class="link_pengumuman"><?= $judul->title_announcement ?></a></b>
                <?= $judul->isi_pengumuman ?>
                </li><br>
              </div>
            </div>

注意:在我试图展示的视图上。不知道是不是语法错误。

*对不起,我的英语太糟糕了

【问题讨论】:

  • 旁注 - 你有一些无效的语法。你永远不会关闭你的第一个&lt;li&gt; 或你的&lt;ul&gt;。并且&lt;br&gt; 不是&lt;ul&gt; 的有效子级 -> &lt;/li&gt;&lt;br&gt;&lt;li&gt;。
  • 您需要运行一个 foreach 来循环浏览您的内容。如果您回显变量,那么它将始终显示相同的结果:)

标签: php html mysql codeigniter


【解决方案1】:
<ul>
foreach($results as $value) {
    echo "<li>";
    // your code
    echo "</li>";
}
</ul>

不要在每个 li 之间使用 br,而是使用 css。

【讨论】:

    【解决方案2】:

    您正在使用$this-&gt;db-&gt;get()-&gt;row() 函数,它只会返回 1 行, 你应该$this-&gt;db-&gt;get()-&gt;result()

    另外,您在order_by() 中传递了$id_announcement,这是错误的,我认为$id_announcement 将是id,用于通过id_announcement 过滤结果

    所以,你的模型函数应该如下所示

        public function getJudul($id_announcement)
            {
                $this->db->select('mp.id_announcement, mp.title_announcement, mp.isi_pengumuman')
                ->from('tbl_mst_pengumuman mp')
                ->where('mp.id_announcement', $id_announcement)
                ->limit(3)
                ->order_by('mp.id_announcement','DESC');
                $query = $this->db->get();
                return ($query->num_rows() > 0) ? $query->result() : false;
            }
    

    在视图文件中添加这样的

    <?php if($judul){ ?>
    <div class="portlet-body">
        <div id="nt-example1-container">    
            <ul id="nt-example1" class="news">
            <?php foreach($judul as $row){ ?>
                <li>
                    <b><a href="<?= site_url('login/pengumuman/detail/'.$row->id_announcement); ?>" class="link_pengumuman"><?= $row->title_announcement; ?></a></b>
                    <?= $row->isi_pengumuman; ?>
                </li>   
            <?php } ?>          
            </ul>
        </div>
    </div>
    <?php }else{ echo 'no records found!'; } ?>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-02
      相关资源
      最近更新 更多