IT새내기IM 2023. 1. 30. 14:30

join.jsp 에서

<td><input id="m_id" name="m_id"><input type="button" value="아이디 중복체크" onclick="id_check(m_id.value)"></td>


if(id_check2.value =="x"){
		alert("아이디 중복체크를 하세요.");
		return;
	}

function id_check(id){
	window.open("id_check.jsp?id="+id,"asdfg","width=300,height=200"); //주소로이동하니 get방식 두번째영역에 아무값이나주면 여러번클릭해도한번만뜸
}

인풋 id의 m_id.value를 onclick에 담고

그 매개변수를

function에서 id로 받아서

자식창을 만든다.

 

id_check.jsp

<%@page import="java.sql.*"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ include file="/include/dbconnection.jsp" %>

    <% 
    String id = request.getParameter("id");
    
    String sql = "select count(*) from member2 where memberid = '"+id+"'";
    
    Connection con = DriverManager.getConnection(url, user, password);
    Statement stmt = con.createStatement();
    ResultSet rs = stmt.executeQuery(sql);
    
    int total = 0;
    
    while(rs.next()){
    	total = rs.getInt(1);    //첫번째 필드값을 가져오는것
    }   
    %>
    
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>아이디 중복체크</title>
<style>
body{
		margin:0;
		padding:0;
		font-size:15px;
		background-color: black;
		color:white;
}
</style>
</head>
<body>
 <script>
 function reok(){
		opener.join.id_check2.value = 'y';    //부모창영역 id_check2값에  자식값y를 전달하겠다.
		opener.join.m_id.value = id.value;   //opener.open(부모창에 조인했을때 m_id.value가 id.value와 같을때)
		self.close();
 }
 </script> 

<form action="" method="get">
<table border=0>
	<tr>
		<td>아이디</td>
		<td><input id="id" name="id" value="<%=id%>"></td>
	</tr>
	<tr>
	<td colspan=2 align="left">
	<%if(total == 0){%>
		<font color=white>사용가능한 아이디입니다.</font>
		<input type="button" onclick="reok()" value="아이디적용">
	<%}else{%>
		<font color=white>사용불가능한 아이디입니다.</font>
		<button>재검색</button>
	<%}%>
	</tr>


</table>
</form>

</body>
</html>