Ошибка: получить свойство не-объекта

Возможный дубликат:
Вызов функции-члена на не-объекте

Я получаю эту ошибку: пытаюсь получить свойство не-объекта [из модели] Когда я пытаюсь получить идентификатор из базы данных, введя строку, которая в этом случае является «чем-то»,

Это моя модель

function getRoleId($role_name='') { $conditions = array('role_name'=> $role_name); $this->db->where($conditions); $this->db->select('id'); $query = $this->db->get('roles'); $row = $query->row(); return $row->id; } 

Контроллер ($ radioRole здесь = что-то), но когда он достигает модели, он становится чем-то другим.

 $radioRole = 'something'; $insertData['role_id'] = $this->user_model->getRoleId($radioRole); 

ОБНОВИТЬ

 print_r($radioRole); $insertData['role_id'] = $this->user_model->getRoleId($radioRole); 

Показывает $ radioRole, который в этом случае "что-то"

но когда он достигает user_model, и когда я делаю print_r, он показывает что-то еще, «покупатель», он даже не показывает print_r, выполненный на контроллере. Чувствуется, что он над написанным: O, но я понятия не имел: O

print_r ($ запроса)

  CI_DB_mysql_result Object ( [conn_id] => Resource id #37 [result_id] => Resource id #64 [result_array] => Array ( ) [result_object] => Array ( ) [current_row] => 0 [num_rows] => 0 [row_data] => ) 

Related of "Ошибка: получить свойство не-объекта"

Твое, where не так:

 $conditions = array('role_name'=> $role_name); $this->db->where($conditions); 

должно быть

 $conditions = array('role_name', $role_name); $this->db->where($conditions); 

РЕДАКТИРОВАТЬ:

как указано в комментариях, запятая необходима, если условие находится непосредственно внутри того where как таковое:

 $this->db->where('role_name',$role_name);