본문 바로가기

'.' Programs/JavaScript

[Javascript] setCookie


<script language=javascript>
<!--
var caution = false;

/**

대괄호[]로 둘러싸여진 부분은 생략가능한 부분입니다. 하지만 쿠키생성시 최소한 4개 즉 path부분까지는 입력하시는 것이 좋습니다.)

bool setcooke(string name [, string value [, int exprire [, string path [, string domain [, int secure]]]]] )

- name : 쿠키변수명

- value : 변수값

- exprire : 쿠키를 사용할 수 있는 시간(unix timestamp로 입력)

- path : 쿠키가 사용될 위치지정

(기본적으로 '/'를 지정하지만 '/test/'로 지정하면 test 폴더와 그 하위폴더에서만 작동됩니다.)

- domain : 쿠키가 사용될 도메인 지정

('www.test.com'으로 지정하면 무조건 그 도메인에서만 작동되지만 '.test.com'으로 지정하면 서브도메인인 ('test1.test.com','test2.test.com')등에서도 사용됩니다.

- secure : https 프로토콜에서만 작동할지 여부 (0 또는 1 값을 같습니다. 기본 0값)

출처 : http://blog.naver.com/moonnyoung/120026779284

*/

function setCookie(name, value, expires, path, domain, secure)

//(변수명,변수값,사용가능시간,위치지정,도메인지정,https프로토콜에서만 작동할지 여부)

//각각의 인자값들을 세팅하는게 인자값으로 값이 들어올 경우 그 값으로 세팅을 하고 값이 없을 경우 공백으로 세팅합니다.
{
var curCookie = name + "=" + escape(value) +

//escape() <-- url 인코딩.문자열 변환을 위해 사용(변수값을 길이 체크해서 쿠기 기록)
((expires) ? "; expires=" + expires.toGMTString() : "") +

/**

인수/파라메터

dateObj

필수적인 요소이며, dateObj 참조는 Date 개체이다.

파라메터
파라메터는 없다.
반환값

반환값 sVal은 현지 시간을 그리니티 표준시간으로 변환하는 toGMTString 메서드는 GMT 규칙을 사용하여 서식을 지정한 일자를 포함하는 String 개체를 편리하고 읽기 쉬운 형식으로 반환한다.

반환된 값의 형식은 "05 Jan 2002 00:00:00 GMT"와 같다.

특기

toGMTString 메서드는 이전 방식이고 단지 이전 버전과의 호환성을 유지하기 위해서만 사용한다.
그 대신
toUTCString 메서드를 사용하라.



출처 : http://koxo.com/lang/js/method/toGMTString.html

*/
((path) ? "; path=" + path : "") +
((domain) ? "; domain=" + domain : "") +
((secure) ? "; secure" : "")
if (!caution || (name + "=" + escape(value)).length <= 4000)

document.cookie = curCookie;
else
if (confirm("Cookie exceeds 4KB and will be cut!"))

//confirm 확인버튼이 있는 대화상자

//쿠키 용량이 4KB초과시 삭제하라는 확인창 띄움
document.cookie = curCookie;
//alert(curCookie);
return true;
}

function check_window()
{
var exp = new Date();
var frm = document.pop;
var oneYearFromNow = exp.getTime() + (24 * 60 * 60 * 1000);

//java.util.Date.getTime() Date 객체로 나타내지는, 1970 년 1 월 1 일 00:00:00 GMT 로부터의 밀리 세컨드수를 돌려줍니다.
exp.setTime(oneYearFromNow);

//java.util.Date.setTime() Date 객체를, 1970 년 1 월 1 일 00:00:00 GMT 로부터 time 밀리 세컨드의 시점을 나타내도록(듯이) 설정합니다.

if (frm.next_time.checked==true)
{
var sc = setCookie("popup","true",exp,"/");

//setCookie(name, value, expires, path) / =>웹상의 최상의 루트
}
else
{
var sc = setCookie("popup","false",exp,"/");
}
}

중간 생략

<td height="22" bgcolor="#000000" align="right"><input type="checkbox" name="next_time" onclick="javascript:check_window();"> 오늘 하루 보지않기.&nbsp;</td>

하단 생략