COMING SOON 🚀

수행시간 체크

· 15년 전 · 2225
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년 전 조회 3,110
15년 전 조회 2,995
15년 전 조회 6,001
15년 전 조회 1,949
15년 전 조회 4,723
15년 전 조회 1,821
15년 전 조회 2,094
15년 전 조회 2,102
15년 전 조회 2,090
15년 전 조회 1,568
15년 전 조회 1,836
15년 전 조회 1,953
15년 전 조회 1,907
15년 전 조회 2,603
15년 전 조회 1,753
15년 전 조회 1,840
15년 전 조회 1,347
15년 전 조회 1,450
15년 전 조회 1,459
15년 전 조회 1,382
15년 전 조회 1,352
15년 전 조회 1,386
15년 전 조회 1,542
15년 전 조회 1,552
15년 전 조회 3,053
15년 전 조회 1,400
15년 전 조회 2,056
15년 전 조회 1,910
15년 전 조회 2,059
15년 전 조회 1,755
15년 전 조회 2,269
15년 전 조회 1,057
15년 전 조회 1,542
15년 전 조회 1,521
15년 전 조회 3,319
15년 전 조회 3,643
15년 전 조회 2,346
15년 전 조회 1,819
15년 전 조회 2,418
15년 전 조회 1,915
15년 전 조회 1,530
15년 전 조회 4,219
15년 전 조회 1,872
15년 전 조회 1,971
15년 전 조회 3,228
15년 전 조회 1,916
15년 전 조회 4,622
15년 전 조회 2,828
15년 전 조회 3,618
15년 전 조회 2,226
15년 전 조회 2,457
15년 전 조회 1,764
15년 전 조회 4,826
15년 전 조회 4,442
16년 전 조회 4,243
16년 전 조회 5,653
16년 전 조회 3,883
16년 전 조회 2,234
16년 전 조회 2,189
16년 전 조회 2,353
16년 전 조회 2,046
16년 전 조회 4,467
16년 전 조회 3,381
16년 전 조회 2,541
16년 전 조회 2,126
16년 전 조회 2,342
16년 전 조회 2,838
16년 전 조회 1,925
16년 전 조회 2,839
16년 전 조회 2,173
16년 전 조회 2,299
16년 전 조회 1,931
16년 전 조회 2,642
16년 전 조회 1,952
16년 전 조회 2,372
16년 전 조회 2,542
16년 전 조회 1,617
16년 전 조회 1,678
16년 전 조회 2,355
16년 전 조회 5,762
16년 전 조회 2,080
16년 전 조회 2,610
16년 전 조회 2,781
16년 전 조회 1,949
16년 전 조회 1,730
16년 전 조회 2,642
16년 전 조회 5,372
16년 전 조회 2,628
16년 전 조회 3,294
16년 전 조회 2,162
16년 전 조회 4,052
16년 전 조회 4,855
16년 전 조회 3,500
16년 전 조회 2,752
16년 전 조회 2,867
16년 전 조회 3,077
16년 전 조회 2,607
16년 전 조회 5,950
16년 전 조회 3,771
16년 전 조회 1,766