2016-03-16 220 views
2

對不起,基本問題,但我無法在網上任何地方找到答案。我昨天開始使用codeigniter而我所要做的就是從數據庫中選擇數據。但是我沒有收到任何錯誤,也沒有顯示任何數據。如果我更改數據庫tabel名稱。它立即引發錯誤。codeigniter - 從數據庫中選擇數據

型號

<?php 

    class Customer_model extends CI_Model { 

     public function get_customers($id) { 
      if ($id != FALSE) { 
       $query = $this->db->get_where('customer', array('id' => $id)); 
      } else { 
       return FALSE; 
      } 
     } 

    } 

控制器

<?php 

    class Customer extends CI_Controller { 

     public function show($id) { 
      $this->load->model('customer_model'); 
      $news = $this->customer_model->get_customers($id); 

      $data['customer_name'] = $news['customer_name']; 
      $data['streetname'] = $news['streetname']; 
      $this->load->view('customers', $data); 
     } 

    } 

VIEW

<?php echo "hallo"; ?> 
<?php echo $customer_name; ?> 

**編輯,在我的頁面可以看到你好的回聲。所以我在正確的頁面,但沒有錯誤,也沒有任何數據丟失的通知。

如果有人有任何想法我做錯了,謝謝你。順便說一句,數據庫連接包括在內,並且包已加載。

感謝

+2

NB:當粘貼代碼,突出顯示的代碼和按CTRL-K或'{}'那會縮進你的代碼。我不得不編輯你的問題。 –

+0

*「立即拋出一個錯誤」* - 究竟是什麼* * –

+0

啊我想知道如何做到這一點,謝謝 –

回答

3

在模型

class Customer_model extends CI_Model { 

    public function get_customers($id) { # refactored 

     $this->db->select(*);    
     $query = $this->db->get_where('customer', array('id' => $id)); 
     $result = $query->result_array(); 

     $count = count($result); 

     if(empty($count)){ 
      return false; 
     } 
     else{ 
      return $result; 
     } 
    } 
} 

在控制器

class Customer extends CI_Controller { 

    public function show($id) { 

     if(empty($id)) # Added 
     { 
      echo "Token Invalid"; 
     } 
     else{ 
      $this->load->model('customer_model'); 
      $news = $this->customer_model->get_customers($id); 

      if($news == false){ # Added 
       echo "No result Found"; 
      } 
      else{ 
       $data['customer_name'] = $news[0]['customer_name']; # Changed 
       $data['streetname'] = $news[0]['streetname']; # Changed 
       $this->load->view('customers', $data);    
      } 
     } 
    } 
} 
+1

這是解決方案!但很少解釋使它更好! – Saty

+0

工作就像一個魅力。我錯過了框架的一些重要概念,例如加載模型類並將它的值返回給控制器。感謝您清理隊友。 –