Заменить первый оператор if
на if( ! $this->session->userdata('user_id') )
.
Функция empty
проверяет, является ли переменная пустой, но userdata
является функцией.Кроме того, для вашей информации, согласно документации CodeIgniter , функция userdata
возвращает FALSE
, если элемент не существует, что означает, что если user_id
не существует в вашем сеансе,код в else
будет выполнен.