2014-03-01 2 views
0

저는 여러 웹 어플리케이션에 Code-igniter 프레임 워크를 사용하고 하나의 서버에서 어플리케이션을 실행하고 있습니다. 나는 하나의 응용 프로그램에서 사용자가 로그 아웃 할 때마다 자동으로 사용자가 해당 서버의 다른 응용 프로그램에서 로그 아웃하게된다는 한 가지 문제에 직면하고 있습니다. 다음은 하나의 서버에서 mutiple 프로젝트에서 세션 파괴하기

은 유지 세션에 대한 코드입니다

$session_data = array(
       'user_id' => $userdetails[0]->user_id, 
       'user_type' => $userdetails[0]->user_type, 
       'user_name' => $userdetails[0]->user_name,            
       'logged_in' => TRUE 
      ); 
$this->session->set_userdata($session_data); 

그리고이 파괴 세션에 대한 코드입니다 :

$session_data = array(
      'user_id' => '', 
      'user_type' => '', 
      'user_name' => '',          
      'logged_in' => FALSE 
     ); 
$this->session->unset_userdata($session_data); 

난에있는 어떤 변화 수행 중 컨트롤러에 또는 in 구성 파일으로이 호를 없애시겠습니까? 세션이 방법은 생성하고 파괴이 사용하기 위해

+0

사용중인 버전은 무엇입니까? 세션을 저장하기 위해 DB를 사용하고 있습니까? – Sanoob

+1

세션과 쿠키 이름이 모든 설정 파일에서 동일합니까? – Prix

답변

1

이동하여 config 폴더에 모든 프로젝트에 대해 다음 설정을 변경합니다. 그들에게 고유 한 이름을 부여하십시오.

$ config [ 'sess_cookie_name'] = 'ci_session';

ci_session은 기본 이름입니다.

+0

감사합니다. 이것은 완벽한 솔루션입니다 .. – Ekansh

0

,

$logindata['user_id'] = $userdetails[0]->user_id; 
$logindata['user_type'] = $userdetails[0]->user_type; 
$logindata['user_name'] = $userdetails[0]->user_name;//add your session data here 
$this->session->set_userdata('session_name',$logindata); // use session name different for different project 

그리고 세션 사용이 파괴에 대한

,

$this->session->unset_userdata('session_name'); //use which session name you want to destroy 
관련 문제