수행시간 체크

· 15년 전 · 1766
PHP]현재 접속자 수 체크하기

<접속했을때>
1.방문자가 사이트에 접속한다.
2.방문자가 사이트에 접속하면 현재의 시간과 접속한 방문자의 IP를 체크한다.
3.방문자의 IP를 이름으로 갖는 텍스트 파일을 생성한다.(생성시간은 방문자가 접속한 시간)
4.다른 IP를 가진 사용자일경우 다른 파일로 생성될 것이기 때문에 파일의 개수를 세어 출력한다.

<떠났을때>
1.방문자가 사이트에 접속한다.
2.방문자가 사이트에 접속하면 현재의 시간과 접속한 방문자의 IP를 체크한다.
3.각 파일들의 생성 시간과 현재 시간과의 차가 20초 이상인 파일을 삭제한다. 즉 20초마다 refresh 하겠다는 말이다.
4.위와 동일
5.위와 동일

<?
$time = time();    //현재의 시간 저장
$ip = $_SERVER[REMOTE_ADDR];    //방문자 IP저장
?>

$result = opendir("now");    //now에 있는 파일 꺼내기 (퍼미션주의)
while($file = readdir($result)){
    if($file == "." || $file == ".."){
        continue;    //파일 이름이 . 또는 ..일 경우에 무시하기( . 과 ..은 경로이다)
    }
    $visit = filemtime("now/$file");    //파일의 생성시간 구하기
    $out = $time - $visit;    //방문자의 접속시간
    if($out > 20){
    unlink("now/$file");    //접속유지 시간이 지난 사용자 삭제
    }
}

$fp = fopen("now/$ip", "w");    //(3)
fwrite($fp, "0");    //파일의 내용이 무엇이 들어가건 상관없다.
fclose($fp);

<Source>
<?
//////////////////////////////////
// 1.방문자가 사이트에 접속한다.
// 2.현재의 시간과 방문자의 IP체크
// 3.각 파일들의 생성 시간과 현재 시간의 차가 20초 이상인 파일을 삭제
// 4.IP를 이름으로 갖는 텍스트를 생성
// 5.파일의 개수를 세어 출력한다.
///////////////////////////////////

$time = time(); //현재 시간
$ip = $_SERVER[REMOTE_ADDR];    //IP Addr

$result = opendir("now");
while($file = readdir($result)){
        if($file == "." || $file == "..")
                continue;
        $visit = filemtime("now/$file");        //파일의 생성시간
        $out = $time - $visit;
        if(out>20){
                unlink("now/$file");
        }
}

$fp = fopen("now/$ip", "w");
fwrite($fp, "0");
fclose($fp);

$result = opendir("now");
while($file = readdir($result)){
        if($file=="." || $file=="..")
                continue;
        $i++;
}
echo "현재 접속자 수는 <b>$i</b>명 입니다.<br>";

?>


$result = opendir("now");
while($file = readdir($result)){
    if($file == "." || $file == "..")

[이 게시물은 관리자님에 의해 2011-10-31 17:16:08 PHP & HTML에서 이동 됨]
|
댓글을 작성하시려면 로그인이 필요합니다. 로그인

프로그램

+
제목 글쓴이 날짜 조회
15년 전 조회 2,625
15년 전 조회 2,513
15년 전 조회 5,499
15년 전 조회 1,465
15년 전 조회 4,227
15년 전 조회 1,359
15년 전 조회 1,653
15년 전 조회 1,622
15년 전 조회 1,609
15년 전 조회 1,113
15년 전 조회 1,362
15년 전 조회 1,504
15년 전 조회 1,407
15년 전 조회 2,135
15년 전 조회 1,278
15년 전 조회 1,335
15년 전 조회 882
15년 전 조회 991
15년 전 조회 955
15년 전 조회 920
15년 전 조회 870
15년 전 조회 931
15년 전 조회 1,074
15년 전 조회 1,094
15년 전 조회 2,612
15년 전 조회 939
15년 전 조회 1,590
15년 전 조회 1,461
15년 전 조회 1,583
15년 전 조회 1,292
15년 전 조회 1,779
15년 전 조회 596
15년 전 조회 1,083
15년 전 조회 1,058
15년 전 조회 2,850
15년 전 조회 3,163
15년 전 조회 1,836
15년 전 조회 1,345
15년 전 조회 1,962
15년 전 조회 1,469
15년 전 조회 1,074
15년 전 조회 3,767
15년 전 조회 1,408
15년 전 조회 1,507
15년 전 조회 2,736
15년 전 조회 1,430
15년 전 조회 4,157
15년 전 조회 2,371
15년 전 조회 3,148
15년 전 조회 1,767
15년 전 조회 1,995
15년 전 조회 1,293
15년 전 조회 4,371
15년 전 조회 3,951
15년 전 조회 3,773
15년 전 조회 5,188
15년 전 조회 3,410
15년 전 조회 1,790
15년 전 조회 1,749
15년 전 조회 1,899
15년 전 조회 1,589
15년 전 조회 3,988
15년 전 조회 2,900
15년 전 조회 2,086
15년 전 조회 1,663
15년 전 조회 1,899
15년 전 조회 2,381
15년 전 조회 1,464
15년 전 조회 2,396
15년 전 조회 1,733
15년 전 조회 1,829
15년 전 조회 1,483
15년 전 조회 2,173
15년 전 조회 1,499
15년 전 조회 1,921
16년 전 조회 2,111
16년 전 조회 1,185
16년 전 조회 1,247
16년 전 조회 1,891
16년 전 조회 5,336
16년 전 조회 1,634
16년 전 조회 2,143
16년 전 조회 2,344
16년 전 조회 1,494
16년 전 조회 1,303
16년 전 조회 2,216
16년 전 조회 4,931
16년 전 조회 2,205
16년 전 조회 2,864
16년 전 조회 1,745
16년 전 조회 3,597
16년 전 조회 4,434
16년 전 조회 3,102
16년 전 조회 2,349
16년 전 조회 2,430
16년 전 조회 2,682
16년 전 조회 2,165
16년 전 조회 5,508
16년 전 조회 3,362
16년 전 조회 1,350
🐛 버그신고