запрос возвращает только строку в codeigniter - PullRequest
0 голосов
/ 27 ноября 2011

В моей модели у меня следующий запрос:

function myquerydata() {
   $data = array();
   $query = $this->db->query('select max(field1) as field11, max(field2) as field22, max(field3) as field33 from my_table');
   foreach ($query->result() as $row) {
        $row->field11;
        $row->field22;
        $row->field33;
    }
}

Этот запрос возвращает только одну строку.

В моем контроллере у меня есть следующий код:

$this->load->model('my_model');
$fields=$data['rows']=$this->my_model->myquerydata();

У меня вопрос, как я могу вызвать поле данных 11, поле 22, поле 33 с контроллера. Когда я применяю foreach, появляется ошибка:

foreach ($fields as $row){
  echo $row->field11,
  echo $row->field22,
  echo $row->field33,
}

В чем моя ошибка?

Ответы [ 2 ]

2 голосов
/ 27 ноября 2011

Сделайте это:

function myquerydata() {

    $data = array();
    $query = $this->db->query('select max(field1) as field11, max(field2) as field22, max(field3) as field33 from my_table');
    //return the result and call from controller
    return $query->result();
}

И поместите следующее в ваш контроллер

$this->load->model('my_model');
$fields=$data['rows']=$this->my_model->myquerydata();
print_r($fields);
1 голос
/ 27 ноября 2011

Ваша функция ничего не возвращает.Вы должны вернуть данные для работы с ним.

return $query->result();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...