2010-07-28 3 views
3

얼마나 많은 사용자와 손님이 온라인 상태인지 추적하는 가장 좋은 방법은 무엇입니까? 임 학습 및 학습을위한 포럼 만들기온라인 상태를 처리하는 방법. 손님, 사용자 등

바로 지금 사용자 테이블에 is_onlinelast_access_time이라는 2 개의 필드가 있습니다.

현재 시간이 last_access_time보다 5 분 이상인 경우 is_online을 0으로 설정하십시오. 로그인 한 사용자가 브라우저를 새로 고침하면 1로 설정합니다.

하지만 손님은 어떻게됩니까? 얼마나 많은 손님이 방문했는지 계속 추적하고 싶습니다.

정말 멋진 또 다른 사항은 사용자가보고있는 페이지를 보여주는 것입니다. 페이지에서 포럼 스레드 (예 : 5 인용), Homer and Shomer가이 페이지를보고 있습니다. 하지만 어떻게 구조화해야합니까? 어쩌면 나는 다른 질문을해야 할 것 같다.

내가 무엇을 해야할지 모르겠다.

당신은 무엇을 제안합니까?

+0

+1 및 + fav. 좋은 질문, 나는 응답을 역시 기다릴 것이다. – CuSS

답변

0

사용자 은 (는) 사용자가 어떤 페이지인지 알 수 없지만 마지막으로 보았던 페이지를 추적 할 수 있습니다. 사용자에게 페이지를 전달할 때마다 페이지 경로를 연관된 데이터베이스 행에 기록하십시오. Voila.

게스트 수를 유지하려면 마지막 X 분 동안 특정 페이지에 표시된 고유 한 인증되지 않은 IP/HTTP-User-Agent 조합 수를 추적하는 것이 좋습니다.

1

나는이 쿠키를 사용하십시오. 사용자가 들어올 때 쿠키를 설정하십시오 (먼저 쿠키가 있는지 확인하십시오). 해당 사용자에 대한 고유 ID를 생성하는 쉬운 방법은 IP와 현재 시간을 해시하는 것입니다. 데이터베이스의

$id = md5($_SERVER['REMOTE_ADDR'] . time()); 

저장하는 ID와 당신은 그들이 부근에서 $ _SERVER [ 'PHP_SELF'] 또는 $ _SERVER [ 'REQUEST_URI'] 잡아서보고있는 어떤 페이지에서 확인할 수 있습니다

를 참조하는 것을 사용 귀하의 PHP 소스의 상단. 그걸 테이블에 보관하십시오. 나는 _SERVER 전역에 저장된 whats에 대한 php.net의 설명을 살펴볼 것입니다. 여러분이 필요한 문서가 더 필요하다면 (ex index.php), 도움이 될 것입니다. Found here.

해당 페이지에 액세스하는 데 사용 된 쿼리 문자열을 분리하고 변수를 구문 분석하여 요청한 페이지를 결정해야 할 수 있습니다. 어느 쪽이든, 이것은 모두 쿠키를 통해 수행 될 수 있습니다. 또는 단일 쿠키를 사용하여 고유 ID를 저장하고 다른 모든 것을 저장하기 위해 테이블을 사용할 수 있습니다.

관련 문제