1. member.php에서 input type="button" value="중복체크" onclick="checkId()">로 버튼을 만들어 클릭 시 checkid()함수가 호출되도록 한 후 함수부분 코드를 만든다.
function checkid() {
var win = window.open("./checkId.php, "Idcheck", "width=500, height=300, top=200, left=800");
}
2. 여기서 윈도우 함수는 자바 코드이기 때문에 <script> </script>를 앞뒤에 붙여준다.
<script> function checkid() {
var win = window.open("./checkId.php, "Idcheck", "width=500, height=300, top=200, left=800");
} </script>
3. 여기서 var는 지역변수를 선언할 수 있는 키워드이며, win은 지역변수의 이름이라고 할 수 있다.
window 함수는 새 창을 열기위해 가장 간단하게 사용할 수 있는 자바스크립트 함수이다. 기본적인 사용법은
var win = window,open(url, name, specs, replace); 이다.
- URL은 보여질 주소로 기본값은 (about:blank)이다.
- name은 창의 속성이나 창의 이름을 지정하는 부분으로 기본 값은 _blank이다.
- specs는 창의 크기, 스크롤 여부, 리사이즈 기능 등의 속성을 지정할 수 있다.
- replace 히스토리 목록에 새 항목을 만들지 현재 항목을 대체할지 지정한다.
4. checkId.php 제작
제일 처음에 데이터 베이스를 연결해주고,
$conn = mysqli_connect('localhost','username','pw');
mysqli_select_db($conn,'table name');
member.php 에서 입력한 id와 데이터 베이스에 있는 id에 같은 값이 있는지 count한다.
(1) $sql = "SELECT * FROM member WHERE id='".$_GET['id']."'";
(2) $result = mysqli_query($conn, $sql);
(3) $count = mysqli_num_rows($result);
5. mysqli_query는 mysqli_connect를 통해 연결된 객체를 이용하여 MySQL 쿼리를 실행시키는 함수이다.
mysqli_query([연결 객체], [쿼리])로 이루어져 있고 위의 코드를 해석하자면,
(1) $sql= select id 로 입력한 아이디와 데이터베이스에 있는 id에 일치하는 값이 있는지 검색하는 sql문을 만들고
(2) $result = mysqli_query($conn, $sql);로 DB와 연결하는 [연결객체] $conn와 [쿼리] $sql 로 여기서 만든 sql문을 데이터베이스와 연결해 실행시켜준다. 그리고 그 값을 $result에 저장한다. 단순히 쿼리 실행만이 목표라면 값을 저장할 필요가 없다. $result는 생략됨.
(3) 그리고 $count = mysqli_num_rows($result);로 이 $result값을 센다. 헤당 함수는 결과 집합에서 행 수를 얻을 수 있고, 이 결과를 우리는 $count에 저장해준다.
6.
if($count == 0){
echo"사용가능한 아이디입니다.";
}
else{
echo"중복되는 아이디입니다.";
}
?>
데이터 베이스 안에 같은 아이디가 없을 경우 값이 0이 나와 사용가능한 아이디가 되는 것이고,
그렇지 않으면 중복되는 아이디가 있어 1이 나왔을 확률이 높다. 이 경우 else로 가 중복디는 아이디라는 문을 출력한다.
if와 $count를 사용한다. if ($count == 0) else()
7. 이제 창을 닫는 구문을 html로 작성한다.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
</head>
<body>
<span><hr>현재 창을 닫으려면 닫기 버튼을 누르세요!</span>
<span onclick="window.close(); ">닫기</span>
</body>
</html>
참고 페이지)
https://kimmy100b.github.io/php/2020/11/30/php-sql/
TIP)
submit 버튼을 누르면 자꾸 페이지가 초기 로컬호스트 페이지로 돌아가서 고생했는데
button으로 바꿔서 사용했더니 그런 현상이 없어졌다.
https://devhoma.tistory.com/m/90
'개발 > PHP' 카테고리의 다른 글
[홈페이지 제작]게시판 리스트, 읽기, 수정, 삭제 기능 (0) | 2021.12.04 |
---|---|
[홈페이지 제작]세션아이디에 대한 기본 이해 (0) | 2021.11.24 |
[CSS] 디자인 - 개념 참고한 블로그 사이트 정리 (0) | 2021.11.10 |
[CSS] 디자인 - 적용이 안될 시 우선순위 파악하기 (0) | 2021.11.10 |
PHP - include 함수 중복 사용 시 오류 (0) | 2021.11.10 |