• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 Next.js 게시판 회원가입 구현 숙제를 해보았는데요

회원가입 구현 숙제를 해보았는데요

2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 글쓴이
  • #91052

    김태현
    참가자
    Q. 연습삼아서 회원가입기능을 만들어옵시다. 
    - 유저가 회원가입페이지에서 아이디, 비번을 입력하고 전송버튼 누르면 그 데이터를 DB의 컬렉션에 보관해두면 그게 회원가입기능 아니겠습니까.
    - 물론 비번은 암호화해서 저장하는게 좋지만 지금은 무시하고 기능만 만들어봅시다. 
    - 이미 존재하는 아이디로는 가입할 수 없게 막아야합니다.
    
    export default function Join() {
      return (
        <div>
          <h2>회원가입</h2>
          <form method="post" action="/api/join">
            <div>
              id:
              <input name="id" />
            </div>
            <div>
              password:
              <input name="password" />
            </div>
            <button type="submit">회원가입</button>
          </form>
        </div>
      );
    }
    
    join.js
    import { connectDB } from "@/util/database";
    export default async function handler(request, response) {
      if (request.method === "POST") {
        const client = await connectDB;
        const db = client.db("forum");
        let result = await db
          .collection("userinfo")
          .findOne({ id: request.body.id });
        console.log(result);
        if (result === null) {
          await db.collection("userinfo").insertOne(request.body);
          response.status(200).json("회원가입성공");
        } else {
          response.status(400).json("중복된 아이디가 있습니다.");
        }
      }
    }
    
    이렇게 구현을 하였는데요 
    중복된 아이디가 있는 경우 api/join 으로 이동이 아닌 
    기본 회원가입 페이지 join 에서 중복된 아이디가 있다는 메세지를 받을수 잇는 방법을 잘 모르겠습니다.
    send 를 사용해보았지만 .. 제 구글링 실력이 모자란지 검색을 어떻게 해야하는지 모르는것인지 방법이 없을까요?
    #91055

    codingapple
    키 마스터
    /join?에러=아이디중복 같은 url로 이동시키면 페이지안에서 query string 같은거 출력가능합니다 
    아니면 서버와 ajax로 통신합시다
2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠