목록전체 글 (225)
컴퓨터는 잘못이 없다..
#구현 화면1 #구현 화면2 ▲How? 1. 에피소드 작성하기는 로그인을 하지 않으면 사용할 수 없기 때문에 로그인이 되어있지 않다면 로그인 페이지로 이동한 후 다시 에피소드 작성 페이지로 이동되도록 만들었다. 이는 로그인필터를 이용해 구현하였다. 2. 내용 작성 폼은 네이버 스마트에디터 API를 통해 구현하였다. 3. 이미지 파일 첨부를 하지 않으면 default 이미지가 나타나도록 구현하였다. #구현 화면3 #구현 화면4 ▲How? 1. 페이지가 로딩될 때는 로그인한 유저의 하트 클릭 여부와 하트 개수를 요청하도록 구현하였다. 하트 클릭여부에 따라 하트가 빈하트, 채워진 하트가 되도록 구현하였다. 2. ajax요청을 통해 해당 글의 빈 하트버튼을 클릭했을 때 해당 글번호와, 글을 누른 유저의 닉네임이..
#구현 화면1 ▲How? 1. 탈퇴 버튼 클릭 시 user테이블에 탈퇴한 유저의 id를 찾아 그 row를 지우는 식으로 구현하였다. 2. 테이블의 해당 id의 row가 지워지면 ①on delete cascade옵션을 통해 해당 id가 작성한 게시글이 삭제되며, 하트 테이블에서 정보가 사라진다. ②trigger을 통해 해당 id의 댓글 테이블의 delete컬럼의 값이 yes로 바뀌며 해당(탈퇴한) id가 남긴 댓글은 모두 '삭제된 댓글입니다'가 뜨도록 구현하였다.
#구현 화면1 #구현 화면2 ▲How? 1. 새 비밀번호와 새 비밀번호 확인 값이 일치해야 폼이 전송되도록 구현하였다. 2. 새 비밀번호는 정규표현식을 통해 유효성 검사를 하도록 구현하였다. 3. 새 비밀번호는 암호화해서 DB에 저장하도록 구현하였다. 4. 기존 비밀번호를 폼 전송 시킨 후 일치여부를 boolean값으로 응답받았다. true이면 비밀번호 수정이 완료되고 로그인 페이지로 이동, false이면 다시 비밀번호 수정폼으로 이동하도록 구현하였다. 5. 기존 비밀번호 일치 여부를 검사할 때는 입력한 비밀번호를 BCrypt의 checkpw 메소드를 통해 기존 비밀번호와 비교하였다. #구현 화면3 ▲How? 1. 모든 입력받는 정보는 정규표현식으로 유효성 검사를 할 수 있도록 하였으며 모든 폼이 제대로..
#구현 화면1 ▲How? 1. 로그아웃을 클릭하면 로그인 시 Session scope에 담아놨던 아이디와 닉네임 정보를 지워주며 로그아웃 처리하는 식으로 구현
#구현 화면1 #구현 화면2 ▲How? 1. 로그인과 비밀번호를 제대로 입력하면 로그인이 되도록 구현하였다. 로그인이 되면 Session scope에 아이디와 닉네임을 담아 여러 페이지에서 사용가능하도록 구현하였다. 2. 로그인 정보 저장 체크박스를 클릭 하고 로그인 할 경우 Cookie scope에 아이디와 비밀번호를 저장하여 다음 로그인 시 자동으로 저장한 로그인 정보가 입력되어 있도록 구현하였다.
#구현 화면1 #구현 화면2 #구현 화면3 ▲How? 1. 모든 입력받는 정보는 정규표현식을 통해 유효성을 검사할 수 있도록 하였으며, 모든 폼이 제대로 입력이 되어야 폼 전송이 이루어지도록 구현하였다. 2. 아이디와 닉네임 중복확인은 ajax요청을 통해 페이지 전환 없이 중복확인이 될 수 있도록 구현하였다. 3. 비밀번호는 암호화 해서 저장될 수 있도록 구현하였다. 4. 생년월일에 년도는 현재 년도를 계산해서 2021년도까지만 나올 수 있도록 드롭다운으로 구현하였다. 5. 생년월일에 월은 1~12까지만 나올 수 있도록 드롭다운으로 구현하였다. 6. 정확한 윤년검사와 각 달의 마지막 일수 검사를 위해 생년월일 중 일자를 적는 입력폼에는 년도와 월을 입력해야만 입력할 수 있도록 구현하였다. 7. 윤년검사와..