project

[웹게시판] (12) 회원정보 등록(join_action.php)

cheda 2022. 1. 17. 17:45

회원정보 등록

join_action.php 파일은 사용자가 입력한 회원가입 정보를 DB(memeber_db)에 저장한다.

 

join_action.php

<?php
$connect = mysqli_connect('localhost', 'member_user', 'password', 'member_db') or die("fail mysql connect");
 
$id=$_POST[id];
$pw=$_POST[pw];
$email=$_POST[email];
$date = date('Y.m.d H:i:s');
        
//입력 데이터를 DB에 저장
$query = "insert into member (id, pw, email, date, permit) values ('$id', '$pw', '$email', '$date', 0)";

$result = $connect->query($query);
 
//저장이 되었다면 (result = true) 가입 완료
if($result) { ?>
    <script>
        alert('가입 되었습니다.');
        location.replace("./login.php");
    </script>
 
<?php  
}
else{  ?>
    <script>      
        alert("fail db save");
    </script>
<?php
}
mysqli_close($connect);
?>

 

(1) DB에 연결 / 사용자 입력값 변수에 저장

회원정보를 저장하기 위해 member_db에 member_user 사용자로 연결한다.

POST 메소드를 통해 전달받은 사용자의 입력값은 변수($id, $pw, $email)에 저장한다.

 

PHP 함수, 변수
mysqli_connect() / $POST
  • (생략: index.php에서 설명)

 

(2) 사용자가 입력한 정보 등록

사용자가 입력한 id를 가진 회원이 존재하는지 확인하는 구문으로 

mysqli_num_rows($result)==1

이 사용되고 있다. 이는 같은 id를 가진 사용자가 존재하지 않다는 것을 가정한 것이다.

하지만 실제로 join.php(회원가입 페이지)에서 중복id를 확인하는 동작이 없다. 중복id인지 검사하는 동작은 추후에 추가할 계획이다.

MySQL 질의문
INSERT INTO member (id, pw, email, date, permit) VALUES ('$id', '$pw', '$email', '$date', 0)
  • insert 구문으로 테이블 member에 데이터를 추가한다.
PHP 함수, 변수
query()
  • (생략: index.php에서 설명)

 

등록결과(성공/실패)에 대한 알림창을 띄워주고 이전 페이지로 되돌아간다.