수행시간 체크

· 15년 전 · 1775
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,638
15년 전 조회 2,523
15년 전 조회 5,506
15년 전 조회 1,476
15년 전 조회 4,238
15년 전 조회 1,366
15년 전 조회 1,665
15년 전 조회 1,630
15년 전 조회 1,620
15년 전 조회 1,123
15년 전 조회 1,370
15년 전 조회 1,511
15년 전 조회 1,417
15년 전 조회 2,142
15년 전 조회 1,288
15년 전 조회 1,346
15년 전 조회 892
15년 전 조회 1,001
15년 전 조회 966
15년 전 조회 930
15년 전 조회 880
15년 전 조회 943
15년 전 조회 1,083
15년 전 조회 1,102
15년 전 조회 2,623
15년 전 조회 949
15년 전 조회 1,602
15년 전 조회 1,469
15년 전 조회 1,599
15년 전 조회 1,301
15년 전 조회 1,791
15년 전 조회 609
15년 전 조회 1,096
15년 전 조회 1,067
15년 전 조회 2,859
15년 전 조회 3,175
15년 전 조회 1,850
15년 전 조회 1,356
15년 전 조회 1,974
15년 전 조회 1,478
15년 전 조회 1,082
15년 전 조회 3,777
15년 전 조회 1,421
15년 전 조회 1,517
15년 전 조회 2,744
15년 전 조회 1,445
15년 전 조회 4,169
15년 전 조회 2,381
15년 전 조회 3,160
15년 전 조회 1,776
15년 전 조회 2,004
15년 전 조회 1,305
15년 전 조회 4,382
15년 전 조회 3,959
15년 전 조회 3,784
15년 전 조회 5,200
15년 전 조회 3,421
15년 전 조회 1,802
15년 전 조회 1,761
15년 전 조회 1,906
15년 전 조회 1,598
15년 전 조회 3,999
15년 전 조회 2,913
15년 전 조회 2,094
15년 전 조회 1,673
15년 전 조회 1,909
15년 전 조회 2,392
15년 전 조회 1,473
15년 전 조회 2,407
15년 전 조회 1,741
15년 전 조회 1,840
15년 전 조회 1,493
15년 전 조회 2,179
15년 전 조회 1,513
15년 전 조회 1,926
16년 전 조회 2,117
16년 전 조회 1,189
16년 전 조회 1,256
16년 전 조회 1,903
16년 전 조회 5,346
16년 전 조회 1,644
16년 전 조회 2,155
16년 전 조회 2,354
16년 전 조회 1,507
16년 전 조회 1,312
16년 전 조회 2,229
16년 전 조회 4,941
16년 전 조회 2,216
16년 전 조회 2,872
16년 전 조회 1,754
16년 전 조회 3,607
16년 전 조회 4,445
16년 전 조회 3,110
16년 전 조회 2,357
16년 전 조회 2,444
16년 전 조회 2,688
16년 전 조회 2,175
16년 전 조회 5,517
16년 전 조회 3,372
16년 전 조회 1,365
🐛 버그신고