현재 접속자 로직의 모순 > 그누보드5 팁자료실

그누보드5 팁자료실

현재 접속자 로직의 모순 정보

현재 접속자 로직의 모순

본문

해결방법없이 문제만 제기하는 글입니다.  ^^;;


그누보드5의 현재접속자 정보를 저장하는 다음과 같습니다.
변수 : $g5['login_table']
테이블 : g5_login
g5_login 필드 : lo_ip / mb_id / lo_datetime / lo_location / lo_url

운영원리
접속된 컴퓨터의 IP를 lo_ip 와 조회해서 중복되면 업데이트를 합니다.

문제점
공유기를 이용해서 다른 컴퓨터에서 접속하면 앞서 접속한 정보가 사라집니다.
즉, 동일 IP에서 복수의 아이디로 로그인 한 경우에 최종 접속한 정보만 존재합니다.

개선방법
$_COOKIE["PHPSESSID"] 값을 저장하는 필드를 추가  ex)  lo_phpsessid
중복체크할때 아래와 같이 변경
아이피 중복확인  →   PHPSESSID 중복확인  →   업데이트


참고자료
https://sir.kr/qa/261344

https://blog.naver.com/visioner7/120162406412

추천
1

댓글 5개

문제는... 세션이 꼭 한 컴퓨터 에서라는 값은 아니라는것입니다.
예를들어 크롬과 익스플로러 두개로 동시접속하면 세션값은 두개가 생성되고 접속자가 2명으로 되겠지요.
100% 확실하게 단일컴퓨터를 인식할기에는 힘들지 않을까 생각합니다.
목적이... 단순 현재 접속수를 찾느냐... 또는 단일 접속자를 찾느냐.. 가 관건이 아닐까 생각해봅니다.
네 맞습니다. 한컴퓨터에서도 2개 이상 브라우저로 접속을 합니다.

비로그인 상태라면 아이피 중복으로 마지막 한개만 인식하고
로그인 상태라면 아이피+아이디 개별로 인식하는것이 어떨까 생각해봅니다.
저것으로 실제 방문수를 알고자 하는게 목적이라면 정확하지 못하다는 말이었구요.
우선 저렇게 db에 남겨두고 전체방문수, 로그인수, 아이피별 방문수 등등
추출해내면 많은 정보를 얻을 수 있어서 좋을꺼 같긴 해요 ^^
전체 2,427 |RSS
그누보드5 팁자료실 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT