Codeigniter: проблема выхода
Я на самом деле не захожу на страницу. Но когда я нажимаю на сервисы на странице индекса для получения дополнительных сервисов, вместо входа в систему отображается кнопка выхода из системы. Пожалуйста, предоставьте решение этой проблемы.
контроллер:
public function more_services($serviceid)
{
$data = $this->data;
$this->load->helper(array('form','url'));
$id=$this->session->userdata('id');
$this->load->model('realpropertiesmodel');
$data['service']=$this->realpropertiesmodel->getServicesbyID($serviceid);
$this->smarty->view('service/service_viewdetails.tpl',$data);
}
public function logout()
{
$this->session->sess_destroy();
$data = $this->data;
redirect("realestate/index" ,'refresh');
}
В представлении я добавляю следующий код:
[~if $id==''~]
[~include file="common/realestate_header.tpl"~]
[~else~]
[~include file="home/realestate_header.tpl"~]
[~/if~]
Но я получил ту же ошибку, когда добавляю много кода. Пожалуйста, предоставьте решение этой проблемы.
1 ответ
Ваш id
переменная может быть false
так что ваш чек с ""
может потерпеть неудачу.
Первое решение:
Изменить id
переменная как -1
если информация для входа отсутствует:
$this->load->helper(array('form','url'));
$id= $this->session->userdata('id');
$id = ($id) ? $id : -1;
$this->load->model('realpropertiesmodel');
А затем проверьте:
[~if $id!=-1~]
Второе решение
Непосредственно проверить на false
:
[~if $id==false~]