DB/Oracle

loginexe 파일 예제

벨포트조던 2016. 3. 9.
반응형

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

<%@ page import="java.sql.*" %>

<%@ page import = "java.net.URLEncoder" %>

<%@ page import = "java.net.URLDecoder" %>

<%@ page import="org.apache.commons.codec.binary.Base64" %>

<%@ include file="../include/dbCon.jsp" %>

<%

String userid = request.getParameter("uid");

String userpwd = request.getParameter("upw");

String memGrd = request.getParameter("memGrd");

String rs_userid = ""; 

String rs_username = "";

String rs_userGrd = "";

String loginOk = "N";

String returnUrl = "";

String queryPlus = "";


String encodePwd = "";


if(memGrd.equals("10")){

queryPlus = " and userGrd = '10' ";

encodePwd = userpwd;

} else {

byte[] encodedBytes1 = org.apache.commons.codec.binary.Base64.encodeBase64(userpwd.getBytes());

encodePwd = new String(encodedBytes1);

queryPlus = " and userGrd <> '10' ";

}

%>

<%

query = "select userId, userName, userGrd ";

query = query + "  from v_login "; 

query = query + " where userid = ? ";

query = query + "   and userpwd = ? ";

query = query + "   " + queryPlus ;


pstmt = conn.prepareStatement(query);

pstmt.setString(1, userid);

pstmt.setString(2, encodePwd);

rs = pstmt.executeQuery();

if(rs.next()){

rs_userid = rs.getString("userId");

rs_username = rs.getString("userName");

rs_userGrd = rs.getString("userGrd");

loginOk = "Y";

} else {

loginOk = "N";

}

rs.close();

pstmt.close();

%>

<%

if(loginOk.equals("Y")){

//쿠키생성하기

Cookie cook1 = new Cookie("CMUSERID", rs_userid);


//쿠키유지시간 설정(초단위)

cook1.setMaxAge(60*720);//유지시간 2분설정

cook1.setPath("/");


//응답객체에 쿠키담기

response.addCookie(cook1);


//쿠키생성하기

Cookie cook2 = new Cookie("CMUSERNAME", URLEncoder.encode(rs_username,"utf-8"));


//쿠키유지시간 설정(초단위)

cook2.setMaxAge(60*720);//유지시간 2분설정

cook2.setPath("/");


//응답객체에 쿠키담기

response.addCookie(cook2);

//쿠키생성하기

Cookie cook3 = new Cookie("CMUSERGRD", rs_userGrd);


//쿠키유지시간 설정(초단위)

cook3.setMaxAge(60*720);//유지시간 2분설정

cook3.setPath("/");


//응답객체에 쿠키담기

response.addCookie(cook3);

// session.setAttribute("CM_USERID",rs_userid);

// session.setAttribute("CM_USERNAME",rs_username);

// session.setAttribute("CM_USERGRD",rs_userGrd);

if(rs_userGrd.equals("10")){ // 일반유저

returnUrl = "/jsp/sManager/statusDetailView.jsp";

} else if(rs_userGrd.equals("50")) { // 팀관리자

returnUrl = "/jsp/sManager/statusDetail.jsp";

} else if(rs_userGrd.equals("70")) { // 그룹관리자

returnUrl = "/jsp/sManager/statusDetail.jsp";

} else if(rs_userGrd.equals("90")) { // 전체관리자

returnUrl = "/jsp/accountManager/accountList.jsp";

}

%>

<script type="text/javascript">

self.location = "<%=returnUrl%>";

</script>

<%

} else {

%>

<script type="text/javascript">

alert("아이디와 암호를 다시 확인하시고 로그인해 주세요.");

self.location = "/index.jsp";

</script>

<%

}

%>

<%

rs.close();

%>

<%@ include file="../include/dbClose.jsp" %>

반응형

댓글