본문 바로가기
Program

쿠키의 사용 법

본문

쿠키의 사용법을 알아보자.

본론내용

쿠키에 대한 이야기..

쿠키란?

원래뜻은 조그만한 과자 란 뜻입니다. 뜻 처럼 조그만한 정보를 가지고 있는 개체라 생각하시면 됩니다.

이 쿠키는 우리가 웹에서 간단한 정보를 기억(저장)하고 필요 시 가져와 유익하게 사용 할 수 있습니다.

주로 아이디 저장 또는 리로드에 의한 조회수 증가등에 많이 사용 됩니다.

이제 우리는 ASP 서버측에서의 쿠키 사용법과 xxJavascript를 이용한 클라이언트측에서의 쿠키 사용법에 대해 알아 보겠습니다.

먼저 ASP 서버측에서의 쿠키 사용의 간단한 예입니다.


<%
    Response.Cookies("id") = "goby"
    Response.Cookies("id").expires = date() + 1
%>


쿠키를 저장시에는 Response 개체를 사용하며, 위 코드는 id라는 이름의 쿠키에 goby라는 값을 저장하게 됩니다.

expires 는 설정한 쿠키의 소멸 시간을 나타냅니다.  하루 이후에는 쿠키는 자동 소멸 됩니다.

만약 expires 타임을 지정하지 않을 경우에는 세션소멸과 동시에 쿠키도 소멸되게 됩니다.

다음은 쿠키을 읽어오는 예입니다.


<%
    dim id
    id = Request.Cookies("id")
%>

id 값은 goby 가 되겠죠..

다음은 쿠키를 배열로 사용한 예입니다.

<%
    Response.Cookies("member")("id") = "goby"
    Response.Cookies("member")("pass") = "1234"
    Response.Cookies("member").expires = date() + 1
%>


다른예를 하나 더 보겠습니다.

<%
    no = "123"
    Response.Cookies("readme")(no) = no
%>


해당 게시물의 번호를 쿠키로 저장할수 있으며 아래와 같이 코딩함으로써 리로드에 의한 게시물 조회수를 방지 할수 있습니다.


    if request.cookies("readme")(no)="" then ' 쿠키가 없다면...
        '
        '.. 조회수 업데이트 처리
        '
        response.cookies("readme")(no)="yes" ' 쿠키 저장
    end if

쿠키 소멸 시간을 지정하지 않았으므로 세션소멸시점(디폴트 20분)과 같습니다.

다음은 xxJavascript를 이용한 쿠키 사용 방법을 알아 보겠습니다.

주로 xxJavascript는 이벤트창에 대한 "창안띄우기" 사용시 유용합니다.

곧바로 실전 예제를 보겠습니다.

<SCRIPT language="xxJavaScript">
    //쿠키를 가져오는 함수
    function getCookie( name )
    {
        var nameOfCookie = name + "=";
        var x = 0;
        while ( x <= document.cookie.length )
        {
            var y = (x+nameOfCookie.length);
            if ( document.cookie.substring( x, y ) == nameOfCookie )
            {
                if ( (endOfCookie=document.cookie.indexOf( ";", y )) == -1 )
                endOfCookie = document.cookie.length;
                return unescape( document.cookie.substring( y, endOfCookie ) );
            }
            x = document.cookie.indexOf( " ", x ) + 1;
            if ( x == 0 )
                break;
        }
    return "";
    }     

    // 쿠키 Notice 의 done 값 유무를 체크하여 팝업창을 띄우는지 유무를 판단한다.
    if ( getCookie( "Notice" ) != "done" )
    {
        noticeWindow = /*window.open*/('/etc/popup.htm','notice','toolbar=no,location=no,directories=no,status=no,menubar=no,    
    scrollbars=no,resizable=no,width=435,height=550,top=100,left=80');
    notice/*Window.open*/er = self;
    }
</script>    

* getCookie() 함수는 해당 이름의 쿠키값을 반환하는 함수 입니다.


<SCRIPT language="xxJavaScript">
    //쿠키를 저장하는 함수
    function setCookie( name, value, expiredays )
    {
        var todayDate = new Date();
        todayDate.setDate( todayDate.getDate() + expiredays );
        document.cookie = name + "=" + escape( value ) + "; path=/; expires=" + todayDate.toGMTString() + ";"
    }

    function closeWin()
    {
        if ( document.form.Notice.checked )
        setCookie( "Notice", "done" , 1);
        self.close();
    }
</script>    

<form name=form>
<input type=CHECKBOX name="Notice">
</form>
<a href=xxjavascript:closeWin()>하루동안 창띄우지 않기</a>

* setCookie()는 쿠키의 이름, 값, 소멸시간을 지정하는 함수 입니다.

여기까지 간단한 쿠키 사용방법에 대해 알아 봤습니다.

쿠키 특성상 클라이언트의 특정폴더에(C:\Documents and Settings\유저아이디\Cookies) 기록 되기때문에 여러명이 같이 사용되는 컴퓨터에서는 보안이 문제가 될수 있습니다.
[이 게시물은 듀라님에 의해 2015-04-03 10:08:13 워드프레스에서 이동 됨]
[이 게시물은 듀라님에 의해 2015-04-03 10:27:24 Public에서 이동 됨]
[이 게시물은 듀라님에 의해 2015-04-03 10:33:53 팁과강좌에서 이동 됨]
[이 게시물은 최고관리자님에 의해 2017-06-10 14:24:30 ASP에서 이동 됨]
0 0
  • 페이스북으로 보내기
  • 트위터로 보내기
  • 구글플러스로 보내기
  • 카카오톡으로 보내기

페이지 정보

l2j (121.♡.101.20) 작성일07-05-02 14:10 조회1,628회 댓글0건

댓글목록

등록된 댓글이 없습니다.

Program 목록

게시물 검색

사이트 정보

  • 회사명 회사명 / 대표 대표자명
  • 주소 OO도 OO시 OO구 OO동 123-45
  • 사업자 등록번호 123-45-67890
  • 전화 02-123-4567 / 팩스 02-123-4568
  • 통신판매업신고번호 제 OO구 - 123호
  • 개인정보관리책임자 정보책임자명

고객센터

  • 02-1234-5678
  • abc@abc.com
  • 월-금 am 11:00 - pm 05:00
  • 점심시간 : am 12:00 - pm 01:00
  • 주말&공휴일은 1:1문의하기를 이용하세요.
상단으로