2016-09-26 101 views
0

我的view如下所示。Codeigniter:如何檢測查詢結果的第一行

<div class="carousel-inner"> 
    <?php 
     foreach($news_data as $nws){ 
    ?> 
    <div class="item **If this is the first row, then echo active**"> 
     <div class="col-md-12 news-item" style="padding-left: 0;"> 
      <p><?php echo $nws->news_desc; ?></p> 
     </div> 
    </div> 
    <?php } ?> 
</div> 

型號:

function get_news_update() 
{ 
    $this->db->select('news_desc'); 
    $this->db->from('news'); 
    $this->db->where('stat', '1'); 
    $this->db->order_by('id', 'desc'); 

    $query = $this->db->get(); 
    return $query->result(); 
} 

請參閱<div class="item。如果它是query result的第一行,那麼它將是item active

如何做到這一點?

回答

1

這是你更新的代碼

 <div class="carousel-inner"> 
     <?php 
      $i = 0; 
      foreach($news_data as $nws){ 
      // it should be $i. not $i%2 right ? 
      if($i == 0) 
      { 
       $class="item active"; 
      } 
       else 
{ 
$class = "item"; 
} 
     ?> 
     <div class="<?php echo $class; ?>"> 
      <div class="col-md-12 news-item" style="padding-left: 0;"> 
       <p><?php echo $nws->news_desc; ?></p> 
      </div> 
     </div> 
     <?php $i++; } ?> 
    </div> 
+0

感謝您的回答。請將'$ i%2 == 0'修改爲'$ i == 0'和'$ class ='item active''工作正常。我糾正了它。 – Raj

+0

我剛剛爲多條記錄添加了%,如果有10條記錄,則1st會變爲活動狀態,第二條記錄會將項目向前移動。任何方式謝謝@Raj –

2

修改您的看法是這樣的:

<div class="carousel-inner"> 
    <?php 
     foreach($news_data as $key => $nws){ 
    ?> 
    <div class="item <?php echo $key == 0 ? "active":""; ?>"> 
     <div class="col-md-12 news-item" style="padding-left: 0;"> 
      <p><?php echo $nws->news_desc; ?></p> 
     </div> 
    </div> 
    <?php } ?> 
</div> 
+0

嗨塔哈,感謝您的簡單的想法。你的代碼可能是最簡單和較少的。我正在使用你的代碼。 – Raj

0

按我的知識,您正在尋找低於code.Please讓我知道,如果它不能正常工作。

function get_news_update() 
{ 
    $this->db->select('news_desc'); 
    $this->db->from('news'); 
    $this->db->where('stat', '1'); 
    $this->db->order_by('id', 'desc'); 

    $query = $this->db->get(); 
    return $query->first_row(); 
} 
+0

嗨Ankit,我只需要檢測顯示第一項時的第一行。不是僅第一行。無論如何,達雅巴德...... – Raj

0

您可以使用row()函數,該函數始終返回第一個結果。 Model.php

function get_news_update(){ 
    $this->db->select('news_desc'); 
    $this->db->from('news'); 
    $this->db->where('stat', '1'); 
    $this->db->order_by('id', 'desc'); 
    $query = $this->db->get(); 

    //check if exist 
    if (isset($query->row())){ 
     return $query->row(); 
    } 
} 

欲瞭解更多信息,你會發現here

View.php

<div class="carousel-inner"> 
    <div class="item **If this is the first row, then echo active**"> 
     <div class="col-md-12 news-item" style="padding-left: 0;"> 
      <p><?php echo $nws->news_desc; ?></p> 
     </div> 
    </div> 
</div> 
相關問題