수행시간 체크

· 15년 전 · 1760
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,617
15년 전 조회 2,505
15년 전 조회 5,491
15년 전 조회 1,457
15년 전 조회 4,221
15년 전 조회 1,351
15년 전 조회 1,645
15년 전 조회 1,611
15년 전 조회 1,605
15년 전 조회 1,106
15년 전 조회 1,354
15년 전 조회 1,495
15년 전 조회 1,399
15년 전 조회 2,128
15년 전 조회 1,271
15년 전 조회 1,328
15년 전 조회 873
15년 전 조회 986
15년 전 조회 948
15년 전 조회 914
15년 전 조회 863
15년 전 조회 924
15년 전 조회 1,068
15년 전 조회 1,087
15년 전 조회 2,605
15년 전 조회 934
15년 전 조회 1,586
15년 전 조회 1,455
15년 전 조회 1,577
15년 전 조회 1,284
15년 전 조회 1,772
15년 전 조회 593
15년 전 조회 1,080
15년 전 조회 1,049
15년 전 조회 2,841
15년 전 조회 3,155
15년 전 조회 1,832
15년 전 조회 1,338
15년 전 조회 1,955
15년 전 조회 1,462
15년 전 조회 1,064
15년 전 조회 3,758
15년 전 조회 1,401
15년 전 조회 1,500
15년 전 조회 2,727
15년 전 조회 1,427
15년 전 조회 4,151
15년 전 조회 2,365
15년 전 조회 3,142
15년 전 조회 1,761
15년 전 조회 1,990
15년 전 조회 1,289
15년 전 조회 4,366
15년 전 조회 3,941
15년 전 조회 3,770
15년 전 조회 5,183
15년 전 조회 3,403
15년 전 조회 1,785
15년 전 조회 1,745
15년 전 조회 1,889
15년 전 조회 1,584
15년 전 조회 3,981
15년 전 조회 2,894
15년 전 조회 2,081
15년 전 조회 1,658
15년 전 조회 1,894
15년 전 조회 2,374
15년 전 조회 1,458
15년 전 조회 2,393
15년 전 조회 1,725
15년 전 조회 1,822
15년 전 조회 1,476
15년 전 조회 2,166
15년 전 조회 1,496
15년 전 조회 1,910
15년 전 조회 2,103
15년 전 조회 1,180
15년 전 조회 1,239
16년 전 조회 1,883
16년 전 조회 5,327
16년 전 조회 1,629
16년 전 조회 2,137
16년 전 조회 2,339
16년 전 조회 1,486
16년 전 조회 1,295
16년 전 조회 2,209
16년 전 조회 4,925
16년 전 조회 2,200
16년 전 조회 2,857
16년 전 조회 1,737
16년 전 조회 3,591
16년 전 조회 4,428
16년 전 조회 3,096
16년 전 조회 2,342
16년 전 조회 2,424
16년 전 조회 2,673
16년 전 조회 2,160
16년 전 조회 5,502
16년 전 조회 3,354
16년 전 조회 1,347
🐛 버그신고