Programing/JavaScript

자바스크립트 쿠키 사용 로그인 아이디저장 구현 방법

리커니 2016. 1. 28.
반응형

 

자바스크립트 쿠키 사용 로그인 아이디저장 구현 방법

 

 

위의 로그인 창과 같이

아이디 저장 체크박스를 선택하고 로그인 한 경우

쿠키를 사용해 아이디 값을 저장하고

페이지를 다시 열었을 시 쿠키값을 읽어와 보여주도록 구현해 보자.

 

우선 로그인이 성공했을 때 쿠키를 생성하는 함수를 넣는다.

 

setCookie('id', id, 30);  //쿠키 생성

('id'라는 이름으로 id값을 30일동안 쿠키로 저장하겠다.)

 

--쿠키생성함수

1
2
3
4
5
6
7
8
9
function setCookie(cName, cValue, cDay){
 if($('input:checkbox:checked').val()=="on"){
  var expire = new Date();
     expire.setDate(expire.getDate() + cDay);
     cookies = cName + '=' + escape(cValue) + '; path=/ '// 한글 깨짐을 막기위해 escape(cValue)를 합니다.
     if(typeof cDay != 'undefined') cookies += ';expires=' + expire.toGMTString() + ';';
     document.cookie = cookies;
 }
}
cs

이제 로그인이 성공했다면 id라는 이름으로 id값이 쿠키에 저장되었다.

이제 페이지 로딩시에 쿠키값을 불러와야겠지.

 

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
$(function(){
 
 var id = getCookie('id');  //id라는 이름의 쿠키를 가져온다.
 if (id!=''){  //id값이 있으면
  $("#id").val(id);  //input에 id값을 넣고
  $("#pw").focus(); //포커스를 pw에가져가고
  $( "input[name=idChk]:checkbox" ).prop("checked" , true);    //아이디저장 체크박스에 체크한다.
 }else{
  $("#id").focus(); //없으면 id에 포커스
 }
 
});
 
 
 
--쿠키가져오는 함수
 
function getCookie(cName) {
    cName = cName + '=';
    var cookieData = document.cookie;
    var start = cookieData.indexOf(cName);
    var cValue = '';
    if(start != -1){
        start += cName.length;
        var end = cookieData.indexOf(';', start);
        if(end == -1)end = cookieData.length;
        cValue = cookieData.substring(start, end);
    }
    return unescape(cValue);
}
cs

 

구현 완료.

 

반응형

댓글

💲 추천 글