2017-03-22 168 views
0

我想在表中显示我的数据库记录,但我不明白。我不知道我的代码有什么问题,但它显示空的结果。我附上了我的模型和观点。我正在使用codeigniter框架。任何帮助将非常感激..如何使用codeigniter将数据库数据加载到表中

这里是我的模型:

public function display_data(){  
    $query = $this->db->query("SELECT * FROM sales_rep_tbl;");    
    if($query->num_rows > 0){ 
      $this->table->set_heading(
      "SR_Code", 
      "SR_Fname" 
      ); 
    foreach($query->result() as $r){ 

     $bg = "black"; 
      $this->table->add_row(
        "<div class = '".$bg."'>".$r->SR_Code."</div>", 
        "<div class = '".$bg."'>".$r->SR_Lname."</div>", 
        "<div class = '".$bg."'>".$r->SR_Fname."</div>"   
      ); 
     $data.= $this->table->generate().br(); 
     } 
    return $data; 
    } 
} 

而我的观点:

<div class = "container" > 
<div class = "row" style = " height:400px; width:auto; margintop:20px;" > 
      <div class = "col-xs-12"> 

         <?php echo $this->Main_Page_Model->display_data();?> 

      </div> 
     </div> 
    </div> 
+0

你为什么显示数据直接来自模型?如果你使用的是框架,那么你应该遵守规则。 –

+0

自从使用codeigniter框架以来,它只有一个星期的时间,并且它真的让mvc感到困惑。这就是为什么我不知道什么是正确的。你可以教我吗 ? –

+0

请看我的回答。对于Codeigniter,我会说你必须先看到用户指南。它在那里。这太容易理解了。点击此链接。 https://www.codeigniter.com/user_guide/ –

回答

1

请按照CI的MVC结构。

您控制器应是:

public function veiw_table() { 
    $data= $this->yourModel->yourfunction(); 
    $this->load->view('yourViewPage', ['data' => $data]); 
} 

你的模式应该是:

public function yourfunction() { 

    $query = $this->db- 
    ->select('*')   
    ->get('yourTableName'); 

    return $query ->result(); 

} 

鉴于:

foreach ($data as $singleData){ 
echo $singleData->columnNam; 

} 

希望这将帮助你

+0

非常感谢你..现在更清晰:) –

相关问题