특정 페이지에 머물럿던 시간을 db에 입력하려면... ㅠㅠ? > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

특정 페이지에 머물럿던 시간을 db에 입력하려면... ㅠㅠ? 정보

특정 페이지에 머물럿던 시간을 db에 입력하려면... ㅠㅠ?

본문

특정 페이지에 머물럿던 시간을 db에 입력하려면... ㅠㅠ?

도움이 절실합니다 우워~~

$time = date("Y-m-d H:i:s", $g4[server_time]);

현재시간을 이렇게 정해놓고 db에 넣긴 했는데

머무른시간은 어떻게 해야~~ 으악! 도움좀 주세요~
  • 복사

댓글 전체

$time 이라는 값은 만들필요가 없습니다
$g4['time_ymdhis'] <-- 이게 바로 그것이거든요

그런데 특정 페이지를 떠나는 시점을 어떻게 알아낸다는거죠?
onunload 시 경고창이 뜨도록하면 디비에 기록하는 것은 가능한데 그런 불편함을 감수하고서라도??
그런데 특정 페이지를 보고있다가 브라우저를 닫아버리거나 다른 사이트로 이동해 버리면???
가능할 것 같지가 않은데요?

5초정도에 한번씩 ajax로 디비에 시간을 기록한다면?
약간의 차이가 나겠지만 어느정도 가능하리라 보이지만 접속자가 많아지면???
시간차로 구하면 됩니다.

a페이의 시간을 구한다면

a페이지
set_session('r_time',$g4['server_time']);

b페이지
//시간,분,초로 시간을 구한다.
function get_time($paint_time){
$ptime=sprintf("%d시간 %d분 %d초",$paint_time/3600,($paint_time/60)%60,$paint_time%60);
if($paint_time<3600)$ptime=sprintf("%d분 %d초",($paint_time/60)%60,$paint_time%60);
if($paint_time<60)$ptime=sprintf("%d초",$paint_time%60);
$array=array(' 0분',' 0초');
$ptime=str_replace($array,'',$ptime);
return $ptime;
}

if(get_session('r_time')){
 //현제페이지 시간 빼기 이전페이지 시간
 $r_time=$g4['server_time']-get_session('r_time');
 $r_time=get_time($r_time);
 //세션 초기화
 set_session('r_time','');
}

//머무른 시간
echo $r_time;

-------------------
대충 이런 형식이 됩니다. a페이지에서 브라우저를 닫으면 시간을 구하지 못합니다.
php 스쿨과 검색을 통해
언로드이벤트로 창닫을때 현재시간을 저장할 수 있을거라 하는데요.
그럼.. mktime()으로 시작시간과 끝을 만들어 저장시킬수 있다고 하는데..
시작은 잘되는데 브라우져를 끌때가 저장이 안되네요 헐헐~~ ㅠㅠ
© SIRSOFT
현재 페이지 제일 처음으로