2016-03-16 3 views
2

Извините за основной вопрос, но я не смог найти ответ нигде в Интернете. Я начал с codeigniter вчера. И все, что я пытаюсь сделать, это выбрать данные из моей базы данных. Однако я не получаю никаких ошибок и не показываю никаких данных. Если я изменю имя табуляции базы данных. Он немедленно выдает ошибку.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; ?> 

** EDIT, в моей страницы можно увидеть отголоски привет. Поэтому я нахожусь на правильной странице, но нет никаких ошибок и уведомлений о любых потерянных данных.

Если у кого-то есть представление о том, что я делаю неправильно, спасибо за миллион. btw подключается к базе данных, а также загружается пакет.

благодаря

+2

NB: При вставке кода, выделите код и нажмите CTRL-K или '{}' и это приведет к отступу вашего кода. Мне пришлось отредактировать ваш вопрос. –

+0

* «Он сразу же выдает ошибку» * - Быть каким-то точно? * –

+0

ah Мне было интересно, как это сделать, спасибо –

ответ

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

Работал как шарм. Мне не хватало каких-то важных концепций фреймворка, таких как экспликация загрузки класса модели и возврат его значения контроллеру. Спасибо, что прояснил это. –

Смежные вопросы