처음부터 차근차근
Session과 login, logout구현 본문
반응형
config.php file 수정
- $config['encryption_key'] = ''; // 32글자의 문자를 입력한다.
- $config['sess_use_database'] = TRUE; // 세션의 데이터를 데이터베이스에 저장한다.
- $config['sess_match_ip'] = TRUE; // 보안을 위해서
- $config['sess_driver'] = 'database'; // session을 database에 저장하겠다. 디폴트 값은 files임.
- $config['sess_save_path'] = 'ci_sessions'; // 데이터베이스 테이블명
- $config['sess_time_to_update'] = 6000; // session을 업데이트할 시간(6000은 100분)
autoload.php 수정
session 라이브러리 로드
$autoload['libraries'] = array('session');
session 추가
$this->session->set_userdata(array('logged_in'=> true));
session 가져오기
$this->session->userdata('logged_in');
데이터베이스에 table만들기
CREATE TABLE IF NOT EXISTS `ci_sessions` (
`id` varchar(128) NOT NULL,
`ip_address` varchar(45) NOT NULL,
`timestamp` int(10) unsigned DEFAULT 0 NOT NULL,
`data` blob NOT NULL,
KEY `ci_sessions_timestamp` (`timestamp`)
);
* codeigniter 3.1.11버전용 코드이다. 다른 버전에서 사용하면 안될 수 있음.
이렇게 하면 서버에서 쿠키를 생성해서 db와 정보를 주고 받는다.
서버의 쿠키 값이 ci_sessions table의 id값과 같은 것을 볼 수 있다.
모든 세션 내용 보기
$this->session->all_userdata();
session 삭제
$data = array('id', 'pwd');
$this->session->unset_userdata($data);
출처 : Codeigniter - 생활코딩 변형 및 요약
반응형
'Framework > CodeIgniter' 카테고리의 다른 글
Core 확장하기 (0) | 2021.12.25 |
---|---|
Codeigniter form 검증 한글 번역하기 (0) | 2021.11.26 |
CKEditor (0) | 2021.11.03 |
파일 업로드 (0) | 2021.11.02 |
로그 (0) | 2021.10.26 |
Comments