그

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

· 2012-04-27 (금) 18:32:04 · 1687 · 5
특정 페이지에 머물럿던 시간을 db에 입력하려면... ㅠㅠ?

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

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

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

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

댓글 5개

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

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

5초정도에 한번씩 ajax로 디비에 시간을 기록한다면?
약간의 차이가 나겠지만 어느정도 가능하리라 보이지만 접속자가 많아지면???
2012-04-27 (금) 19:06:43
브라우저를 닫을때 입력되게 하고싶은데 방법이 없을까욤...
2012-04-27 (금) 19:07:31
시간차로 구하면 됩니다.

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페이지에서 브라우저를 닫으면 시간을 구하지 못합니다.
브라우저가 닫히는 순간 디비에 기록할 수는 없을 겁니다
빛의 속도로 기록이 가능하다면 모를까...
2012-04-28 (토) 12:27:58
php 스쿨과 검색을 통해
언로드이벤트로 창닫을때 현재시간을 저장할 수 있을거라 하는데요.
그럼.. mktime()으로 시작시간과 끝을 만들어 저장시킬수 있다고 하는데..
시작은 잘되는데 브라우져를 끌때가 저장이 안되네요 헐헐~~ ㅠㅠ
댓글을 작성하시려면 로그인이 필요합니다.

그누4 질문답변

66,531건

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

+
제목 글쓴이 날짜 조회
12-04-28 조회 1,519
12-04-28 조회 1,104
12-04-28 조회 1,246
12-04-28 조회 1,134
12-04-27 조회 884
12-04-27 조회 870
12-04-27 조회 3,230
12-04-27 조회 1,691
12-04-27 조회 1,688
12-04-27 조회 1,808
12-04-27 조회 1,214
12-04-27 조회 1,070
12-04-27 조회 857
12-04-27 조회 1,722
12-04-27 조회 1,051
12-04-27 조회 914
12-04-27 조회 3,225
12-04-27 조회 2,070
12-04-27 조회 1,135
12-04-27 조회 1,694