기초부터 시작하는 코딩/PHP

RE : 제로부터 시작하는 PHP - 회원가입편

kebab00 2023. 5. 15. 21:55

728x90

- 안녕하세요 여러분 오늘은 PHP를 해볼까 합니다.

- 근데 왜 또 회원가입이냐구요??

- 제가 오늘 해보니까 다 까먹었기 때문이죠 

- 복습이 이렇게 중요합니다 ㅋㅋㅋ

- 오늘 볼 코드는 크게 3가지 입니다.

- 먼저 데이터를 입력하는 HTML코드입니다.

- 사용자가 데이터를 입력하는 부분으로 마지막에 버튼을 누르면 form태그를 통해 데이터가 넘어갑니다.

- 두번째는 받아온 데이터를 php로 변수처럼 저장하는 방법입니다.

- 세번째는 그 저장한 데이터를 사용해서 sql문을 작성한 것입니다.

- 코드를 보시죠

<form action="joinResult.php" name="join" method="post" onsubmit="return joinChecks()">
    <fieldset>
        <legend class="blind">회원가입 영역</legend>
        <div>
            <label for="youEmail" class="required">이메일</label>
            <div class="input__inner">
                <input class="inputStyle" type="email" id="youEmail" name="youEmail" placeholder="이메일을 입력해주세요" required>
                <a href="#c" class="checkbtn"  onclick="emailChecking()">중복확인</a>
                <p class="msg" id="youEmailComment"><!--이메일이 존재합니다.--></p>

            </div>
        </div>
        <div>
            <label for="youName" class="required">이름</label>
            <input class="inputStyle" type="text" id="youName" name="youName" placeholder="이름을 입력해주세요" required>
            <p class="msg" id="youNameComment"><!--이름은 한글로만 작성할 수 있습니다.--></p>
        </div>
        <div>
            <label for="youPhone" class="required">연락처</label>
            <input class="inputStyle" type="text" id="youPhone" name="youPhone" placeholder="연락처를 입력해주세요"required>
            <p class="msg" id="youPhoneComment"><!--휴대폰 번호를 입력해주세요.--></p>
        </div>
        <div>
            <label for="youNick" class="required">닉네임</label>
            <div class="input__inner">
                <input class="inputStyle" type="text" id="youNick" name="youNick" placeholder="닉네임을 입력해주세요" required>
                <a href="#c" class="checkbtn" onclick="nickChecking()">중복확인</a>
                <p class="msg" id="youNickComment"><!--닉네임이 존재합니다.--></p>
            </div>
        </div>
        <div>
            <label for="youPass" class="required">비밀번호</label>
            <input class="inputStyle" type="password" id="youPass" name="youPass" placeholder="비밀번호를 입력해주세요" required>
            <p class="msg" id="youPassComment"><!--비밀번호, 특수기호, 숫자가 들어가야 합니다.--></p>
        </div>
        <div>
            <label for="youPassC" class="required">비밀번호 확인</label>
            <input class="inputStyle" type="password" id="youPassC" name="youPassC" placeholder="비밀번호를 다시한번 입력해주세요" required>
            <p class="msg" id="youPassCComment"><!--비밀번호가 일치하지 않습니다.--></p>
        </div>
        <div>
            <label for="youQuestion" class="required">비밀번호 찾기 질문</label>
            <select name="youQuestion" id="youQuestion">
                <option value="1">당신의 가장 소중한 것은 무엇입니까?</option>
            </select>
        </div>
        <div>
            <label for="youAnswer" class="required">질문 답변</label>
            <input class="inputStyle" type="text" id="youAnswer" name="youAnswer" placeholder="질문 답변을 입력해 주세요"required>
        </div>
        <button type="submit" class="btnStyle5">회원가입</button>
    </fieldset>
</form>

- 폼 태그를 사용했고 그 안에 label, input, select등의 태그를 사용해서 사용자가 데이터를 입력할 공간을 마련했습니다.

- 그리고 마지막에 회원가입버튼을 누르면 회원가입이 되도록 해주었습니다.

- 아직 유효성검사는 진행하지 않았습니다.

$youEmail = $_POST['youEmail'];
$youName = $_POST['youName'];
$youNick = $_POST['youNick'];
$youPass = $_POST['youPass'];
$youPhone = $_POST['youPhone'];
$youQuestion = $_POST['youQuestion'];
$youAnswer = $_POST['youAnswer'];
$regTime = time();

- 그렇게 사용자가 입력한 데이터를 POST 타입으로 받아와 변수처럼 저장한 코드입니다.

- 이렇게 한 후 $youEmail과 같은 형식을 사용해 sql문을 작성할 때 사용할 수 있습니다.

$sql = "INSERT INTO plantyMember(youEmail, youName, youNick, youPass, youPhone,youQuestion, youAnswer, regTime) VALUES('$youEmail', '$youName','$youNick', '$youPass', '$youPhone', '$youQuestion','$youAnswer', '$regTime')";
$connect -> query($sql);

- sql 문입니다. 

- 저희는 컴마 하나 때문에 한시간을 고생했습니다.

- 정확하게 입력하는 것이 중요합니다 ㅠㅠ

- 그 후 $connect -> query($sql);를 통해 sql문을 데이터베이스에 전달합니다.

- 끝!