Web-Programming/Javascript

JAVASCRIPT : 자바스크립트 쿠키를 구워보자!!!ㅎㅎㅎㅎㅎㅎㅎㅎㅎㅎ

yehza 2010. 5. 14.


<script language=javascript>
<!--
var ExpDate = new Date();

function getCookieVal (offset) {
   var endstr = document.cookie.indexOf ("=", offset);
   if (endstr == -1) endstr = document.cookie.length;
   return unescape(document.cookie.substring(offset, endstr));
}

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 "";
}

function SetCookie (name, value) {
   var argv = SetCookie.arguments;
   var argc = SetCookie.arguments.length;
   var expires = (2 < argc) ? argv[2] : null;
   var path = (3 < argc) ? argv[3] : null;
   var domain = (4 < argc) ? argv[4] : null;
   var secure = (5 < argc) ? argv[5] : false;
   document.cookie = name + "=" + escape (value) +
   ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
      ((path == null) ? "" : ("; path=" + path)) +
      ((domain == null) ? "" : ("; domain=" + domain)) +
      ((secure == true) ? "; secure" : "");
}

function SetCookieVal (name, value) {

   pathname = location.pathname;
   var myDomain = pathname.substring(0, pathname.lastIndexOf('/')) +'/';
   ExpDate.setTime(ExpDate.getTime() + 2000*60);
   SetCookie(name, value, ExpDate, myDomain);

}


/*

//## 위 까지가 기본적으로 쿠키를 생성하고, 가져오는 함수입니다. ㅎㅎ

퍼온거에요,,ㅋㅋ;






//## 밑에 함수는 구운쿠키를 가지고와서 확인하는거죠, ㅎㅎ등록된 쿠키의 ip값이 userip변수의 값과 같으면 다른페이지로 이동!


//## userip는 어떻게 확인하느냐..$_SERVER['REMOTE_ADDR'] <=php 함수 입니다. 

$userip=$_SERVER['REMOTE_ADDR'];

요렇게 주고..

<input type="button" value="확인" onclick="CheckCookie('{$userip}')">

요러면되겠죠??;아마?


쿠키를 생성할때는 <body onload="SetCookieVal('xxxx','yyyy')>

xxxx에는 쿠키생성할때 이름을, yyy에는 어떤값을 입력할건지 주면되겠죠?그러면 페이지에 접속하자마자 쿠키가 생성됩니다.

그리고 쿠키가 제대로 생성되었는지를 확인할때는 주소창에 javascript:alert(document.cookie)라고치고 엔터!그러면 alert창에 쿠키값이 보입니다. 거기에서 내가 준 이름과 값이 들어가 있는지 확인~할 수 있죠


그리고    SetCookieVal에서 ExpDate.setTime(ExpDate.getTime() + 2000*60); < 이부분 이부분이 쿠키 저장시간을 지정하는겁니다. 잘 사용하면 하루동안 열지 않음 같은 팝업창에도 사용자별로 쓸 수 있습니다. ㅎㅎ setTime에서 1 은 1/1000초입니다. 고로 2000은 2초 거기에다가 60을 곱했으니까 2분이겠네요.. ㅎㅎ

*/

function CheckCookie(userip){
 if(GetCookie('ip')==userip){
  location.href='URL';
 }else{
  return;
 }
}
</script>



//## 이상 끝..-               -;!!!



이게 주소창에 javascript:alert(document.cookie)라고 친거에요. ㅎㅎ


한번해보세요~


댓글

추천 글