본문 바로가기

Programming/PHP+MySQL(Database)

2023-09-29 PHP와 MYSQL을 활용한 회원가입 페이지 구축(1)

※ 목표 : 회원가입 페이지 구축 (로그인 중복확인)
※ 시나리오
[1] 회원가입 창 구축 ◀

[2] 아이디 중복확인

[3] 비밀번호 일치확인
[4] 회원가입 완료


[1] 회원가입 창 구축 (join.php)

1) 이름 / 아이디 / 아이디 중복확인 후 받을 히든 decide_id / 아이디 중복여부 확인 버튼 / 비밀번호 / 비밀번호 확인 폼 생성

2) method 형식은 POST로 지정 submit 버튼 클릭 시 join_ok.php 페이지 이동 / 자동완성 x

회원가입 클릭시 나타나는 join.php


[2] 아이디 중복확인

1) 아이디 폼에 지정해준id를(get형식으로 받음) 변수 -> userid로 지정

2) 변수 userid를 check.php로 넘겨주기 위한 url구조 생성

3) 아이디 폼에 아무것도 작성되지 않았다면 else(alert"아이디를 입력하세요.") 출력

function checkid를 실행

[2-1] check.php

1) get형식으로 받은 userid ->  $uid로 지정
2) mysql연결 후 db(xxx)의 id 데이터화 $uid가 같은지 쿼리(이미 존재하는지)
3) 존재하지않는다면 // $uid는 사용 가능한 아이디입니다. 출력
3-1) onclick="opener.parent.decide() --> 부모창에 decide()함수창 오픈 후 현재창 닫기
4) 존재한다면 // 중복된 아이디입니다. --> 부모창에 chang()함수창 오픈 후 현재창 닫기


[2-2] decide() 함수 출력 (사용가능한 아이디입니다. -> 이 ID 사용 클릭시 작동)

1) innerHTML을 활용하여 "ID 중복 여부를 확인해주세요." -> "사용 가능한 아이디입니다." 변경
2) 아이디를 받을 hidden decide_id 를 중복여부 확인이 끝난 uid 변수로 지정
3) 아이디 작성폼 비활성화
4) submit -> join_button 버튼 활성화
5) check_button의 "ID 중복 검사" -> "다른 ID로 변경" 
6) "다른 ID로 변경" 버튼의 onclick 속성 값을 change() 함수로 변경해준다.

function decide()를 실행

 

[2-3] change() 함수 출력 (중복된 아이디입니다. ->  다른 ID 사용 클릭시 작동)

1) decied() 함수와 대조