Оба других ответа исправляют одну из двух ошибок в вашем коде, это дополнение.
if($query) {
$username = $this->input->post('username');
$this->db->select('company')->where('username', $username);
$result = $this->db->get('user')->row_array();
$data = array(
'username' => $username,
'company' => $row['company'],
'is_logged_in' => true
);
$this->session->set_userdata($data);
redirect('site/members_area');
} else {
$this->index();
}
Видишь, что я там делал? Вам не нужно использовать result_array (), а затем захватить $ query_result [0], как row_array () сделает это за вас. И с небольшим добавлением цепочки методов для хорошей меры вы можете очистить свой синтаксис.