php 회원가입 소스짜고있는데 회원가입시에 이미 DB내에 있는 아이디로 가입 못하게 어떻게 하나요??


php 회원가입 소스짜고있는데 회원가입시에 이미 DB내에 있는 아이디로 가입 못하게 어떻게 하나요??

  • 2016년 07월 22일에 작성됨

조회수 526


1 답변


2가지 방법이 있는데 2가지 방법 모두 적용하는게 좋습니다

첫번째

데이터베이스에서 아이디 컬럼 인덱스에 UNIQUE를 걸어놓는 방법입니다.

이렇게 걸어놓으면 insert할때 아이디부분이 중복된다면 insert가 취소가 됩니다

두번째

php 로직단에서 아이디 중복체크를 하는 방법인데 현재 가입할때 요청이 들어온 아이디를 사용하는 방법입니다.

이런방식으로 돌아가는거라 적당히 수정을 하셔야됩니다

// 아이디 값을 가져온다
$id = $_POST['id'];

// 아래 쿼리를 실행해서 결과값을 가져온다
// 유저 테이블에서 id에 방금받은 $id 값을 찾는다
// 0 을 한 이유는 *를 할필요가 없기때문
SELECT 0 FROM '유저테이블' WEHRE id = $id

// 방금 가져온 데이터에서 만약 가져온게 있다
if( TRUE ) {

    아이디가 중복입니다;

} else {

    회원가입 완료;

}

이런 형식입니다. 사용하시는 db 함수에 따라 가져오는 부분은 달라지니 수정하시면 됩니다

  • 2016년 07월 22일에 작성됨
    웹을 좋아함

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close