쿠키
- 인터넷 웹사이트의 방문기록을 남겨 사용자와 웹사이트 사이를 매개해 주는 정보
쿠키 구성
name=value; expires=[Date]; domain=[Domain]; path=[Path]; [secure]
<html>
<head><title>예제 12-1</title></head>
<body>
<script language="JavaScript">
//GetCookie - 쿠키를 가져온다
var username = GetCookie('usernam');
var count = GetCookie('count');
if (username == null) {
count = 0;
username = prompt('이름을 입력해 주십시오.',"");
if (username == null) {
alert('이름을 입력하시면 보다 나은 서비스를 제공받을 수 있습니다.');
username = '아무개';
} else {
//쿠키의 유효기간
var expire = new Date ();
//쿠키의 유효기간의 설정(여기선 1년동안 지속되게 하겠다는 뜻)
expire.setTime(expire.getTime() + (365 * 24 * 3600 * 1000));
SetCookie('usernam',username,expire);
}
}
//올 때마다 계속 저장을 해 주고, count값을 올려준다
count++;
SetCookie('count',count,expire);
function GetCookie (name) {
var first;
var str = name + "=";
var ar = document.cookie.split("; ");
for(var i=0; i<ar.length; i++) {
var c = ar[i];
//name과 value값을 구분하기 위한 식
var nv = c.split("=");
if(nv[0] == name)
//unescape로 value값을 가져와서 리턴
return unescape(nv[1]);
}
return null;
}
function SetCookie (name, value, expireDate) {
//escape 한글 깨짐현상 방지
//cookieStr > (expireDate값이 널값일 때)name=value;expries=expireDate
var cookieStr = name + "=" + escape(value) +
((expireDate == null)?"":("; expires=" + expireDate.toGMTString()));
document.cookie = cookieStr;
}
document.write('<p>어서오십시오. '+username+'님의 '+count+'번째 방문을 환영합니다!');
</script>
</body>
</html>
실습>> 쿠키 parent_popup.html
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Insert title here</title>
<script type="text/javascript">
//재사용
function GetCookie (name) {
var first;
var str = name + "=";
var ar = document.cookie.split("; ");
for(var i=0; i<ar.length; i++) {
var c = ar[i];
//name과 value값을 구분하기 위한 식
var nv = c.split("=");
if(nv[0] == name)
//unescape로 value값을 가져와서 리턴
return unescape(nv[1]);
}
return null;
}
//popup창을 NO가 아닐 때만 창을 띄운다
if(GetCookie("pop1") != "NO") {
window.open("1.html", "test",
"left=32, top=112, width=362, height=360, scrollbars=no, toolbars=no, resizable=0");
}
</script>
</head>
<body>
실행은 부모.html에서 합니다
</body>
</html>
child_popup.html
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Insert title here</title>
<script type="text/javascript">
function setCookie (name, value) {
//expireDate 유효기간 설정
var expireDate = new Date();
expireDate.setTime(expireDate.getTime() + (24*3600*1000));
//재사용 가능
var cookieStr = name + "=" + escape(value) +
((expireDate == null)?"":("; expires=" + expireDate.toGMTString()));
document.cookie = cookieStr;
}
//popup창을 띄우고 NO라 입력받으면 창 종료
function pop() {
setCookie("pop1", "NO");
window.close();
}
</script>
</head>
<body topmargin="0" leftmargin="0">
<table width="362" height="330" border="0" cellpadding="0" cellspacing="0" >
<tr>
<td valign="top">aa</td>
</tr>
</table>
<table width="362" border="0" cellpadding="0" cellspacing="0">
<tr height="30">
<td bgcolor="#000000" style="color: #FFFFFF;" align = "right">
오늘 하루 이 창을 열지 않음
<input type="checkbox" onclick="pop()"> </td>
</tr>
</table>
</body>
</html>
'Study > JavaScript' 카테고리의 다른 글
[javaScript] Dom Script 실습 (0) | 2019.05.16 |
---|---|
[javaScript] Dom Script (0) | 2019.05.16 |
[javaScript] Document 실습 (0) | 2019.05.16 |
[javaScript] Document (0) | 2019.05.16 |
[javaScript] Form (0) | 2019.05.16 |