hacking study/웹개발

정보보안 스터디 - 7주차 4일 - 좋아요/좋아요취소 기능

wonder12 2022. 11. 27. 23:21

사실 좋아요를 누를 때마다 페이지를 일일이 이동하는 게 아니라 바로 행동할 수 있는 자바스크립트로 구현하는 게 맞겠지만 자바스크립트 안에서 php> SQL문을 실행시키는 것에 있어서 문제가 생겨서 방향을 틀었습니다.

 

 

그냥 페이지를 이동시키는 방식으로 구현합니다.

 

 

☞ 좋아요 구현

일단 좋아요 수를 카운트할 수 있는 up 과, 좋아요를 한 사람을 체크할 수 있는 upname을 DB 컬럼에 추가합니다.

 

 

현재좋아요 수를 노출하고

 

세션값: 아이디로 검색해서 만약 유저가 좋아요를 누른적이 있다면

DB에 이름이 등록이 되어있을 것 입니다.

 

이름이 등록되어있지 않다면 색칠안된 빈 하트를 노출합니다.

이미지를 클릭하면 좋아요페이지로 갑니다.

 

현재는 좋아요를 누르지 않고 관리자(wonder12)만 좋아요를 누른 상태이므로 좋아요 페이지로 이동합니다.

 

세션 아이디값을 검색해서 등록 아이디가 있다면

아무것도 하지않고 뒤로 돌아갑니다.

 

등록 아이디가 없다면

현재 좋아요수에서 1을 추가해주고

현재 좋아요 유저리스트에서 아이디를 추가해줍니다.

|아이디| 형태로 등록을 해야 아이디 자체만 검색 할 수 있습니다.

 

DB에 업데이트를 했다면 돌아갑니다.

 

 

 

좋아요 취소 구현

좋아요 수가 추가 되었습니다.

 

이름이 이미 등록되어 있다면 색칠된 하트를 노출합니다.

이미지를 클릭하면 좋아요 취소페이지로 갑니다.

 

마찬가지로 아이디가 등록되어 있는지 검사를 해서 등록되어 있다면 

좋아요 수는 1을 빼서 업데이트하고

현재 좋아요 유저리스트에서 등록된 이름만 빈칸으로 치환하여 뺍니다.

 

등록되어있지 않다면 

아무것도 업데이트 하지 않습니다.

 

업데이트가 되었다면 뒤로 돌아갑니다.

 

 

 

글 리스트 내의 좋아요 조회 구현

좋아요 테이블을 추가해주고 현재 좋아요 수를 불러옵니다.

보기좋은 이미지도 추가해줍니다.

또한 보기좋게 가운데 정렬을 합니다.