2014년 11월 3일 월요일

[JavaScript] 로그인 아이디 저장(세션)

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>로그인</title>
<link rel="stylesheet" type="text/css" href="/conf/style.css">
<S-ript Language="JavaS-ript">// 로그인 입력 확인
function checkLogin(){
var frm = document.loginForm;
 if(frm.id.value == "") {
  alert("아이디를 입력하세요.");
  frm.id.focus();
  return false;
 }
 if(frm.pass.value == "") {
  alert("비밀번호를 입력하세요.");
  frm.pass.focus();
  return false;
 }
 // 로그인 정보 저장 체크 확인하여 진행
 if(frm.saveid.checked) saveLogin(frm.id.value);
 else  saveLogin("");
 frm.action = "/member.do?method=login";
 frm.submit();
}
// 로그인 정보 저장
function confirmSave(checkbox){
  var isRemember;
  // 로그인 정보 저장한다고 선택할 경우
  if(checkbox.checked)  {
    isRemember = confirm("이 PC에 로그인 정보를 저장하시겠습니까? \n\nPC방등의 공공장소에서는 개인정보가 유출될 수 있으니 주의해주십시오.");
    if(!isRemember)
      checkbox.checked = false;
  }
}
// 쿠키값 가져오기
function getCookie(key){
  var cook = document.cookie + ";";
  var idx =  cook.indexOf(key, 0);
  var val = "";
  if(idx != -1)  {
    cook = cook.substring(idx, cook.length);
    begin = cook.indexOf("=", 0) + 1;
    end = cook.indexOf(";", begin);
    val = unescape( cook.substring(begin, end) );
  }
  return val;
}
// 쿠키값 설정
function setCookie(name, value, expiredays){
  var today = new Date();
  today.setDate( today.getDate() + expiredays );
  document.cookie = name + "=" + escape( value ) + "; path=/; expires=" + today.toGMTString() + ";";
}
// 쿠키에서 로그인 정보 가져오기
function getLogin(){
 var frm = document.loginForm;
 // userid 쿠키에서 id 값을 가져온다.
 var id = getCookie("userid");
 // 가져온 쿠키값이 있으면
 if(id != "") {
  frm.id.value = id;
  frm.saveid.checked = true;
 }
}
// 쿠키에 로그인 정보 저장
function saveLogin(id){
 if(id != "") {
  // userid 쿠키에 id 값을 7일간 저장
  setCookie("userid", id, 7);
 }else{
  // userid 쿠키 삭제
  setCookie("userid", id, -1);
 }
}
</Script>
<body onLoad="getLogin()">
<img src="/item/images/11300514_user_153922.jpg" alt="" width="900px" height="120px"
      onclick="location.href='/main.do'" style="cursor:hand; margin-bottom:10px; display:block;"/>
<div class="left">
<jsp:include page="/conf/left_column.jsp"></jsp:include>
</div>
<div class="main">
<form name="loginForm" method="post" action="">
아이디 : <input name="id">
 <input name="saveid" id="saveid"        type="checkbox" onClick="confirmSave(this)">
 <label for="saveid">저장</label>
<br> 비밀번호 : <input name="pass" type="password"> <br> <br>
<input type=submit value="로그인" onclick="checkLogin();">
</form>
<c:if test="${ result ne null }">
<c:if test="${result==0}">비밀번호가 틀립니다.</c:if>
<c:if test="${result==-1}">아이디가 없습니다.</c:if>
</c:if>
</div>
</body>
</html>
 
 
출처 :
http://seonju.egloos.com/viewer/85761

댓글 없음:

댓글 쓰기