수행시간 체크

· 15년 전 · 1758
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,615
15년 전 조회 2,503
15년 전 조회 5,490
15년 전 조회 1,456
15년 전 조회 4,219
15년 전 조회 1,348
15년 전 조회 1,642
15년 전 조회 1,607
15년 전 조회 1,603
15년 전 조회 1,104
15년 전 조회 1,352
15년 전 조회 1,493
15년 전 조회 1,397
15년 전 조회 2,126
15년 전 조회 1,269
15년 전 조회 1,323
15년 전 조회 869
15년 전 조회 984
15년 전 조회 945
15년 전 조회 912
15년 전 조회 860
15년 전 조회 921
15년 전 조회 1,067
15년 전 조회 1,085
15년 전 조회 2,604
15년 전 조회 932
15년 전 조회 1,584
15년 전 조회 1,453
15년 전 조회 1,574
15년 전 조회 1,282
15년 전 조회 1,769
15년 전 조회 592
15년 전 조회 1,079
15년 전 조회 1,048
15년 전 조회 2,839
15년 전 조회 3,152
15년 전 조회 1,830
15년 전 조회 1,336
15년 전 조회 1,954
15년 전 조회 1,459
15년 전 조회 1,063
15년 전 조회 3,757
15년 전 조회 1,399
15년 전 조회 1,497
15년 전 조회 2,724
15년 전 조회 1,425
15년 전 조회 4,149
15년 전 조회 2,361
15년 전 조회 3,141
15년 전 조회 1,759
15년 전 조회 1,987
15년 전 조회 1,286
15년 전 조회 4,364
15년 전 조회 3,938
15년 전 조회 3,767
15년 전 조회 5,181
15년 전 조회 3,401
15년 전 조회 1,782
15년 전 조회 1,744
15년 전 조회 1,887
15년 전 조회 1,581
15년 전 조회 3,980
15년 전 조회 2,893
15년 전 조회 2,078
15년 전 조회 1,656
15년 전 조회 1,891
15년 전 조회 2,371
15년 전 조회 1,456
15년 전 조회 2,390
15년 전 조회 1,724
15년 전 조회 1,820
15년 전 조회 1,475
15년 전 조회 2,164
15년 전 조회 1,493
15년 전 조회 1,908
15년 전 조회 2,101
15년 전 조회 1,178
15년 전 조회 1,237
15년 전 조회 1,880
15년 전 조회 5,326
16년 전 조회 1,628
16년 전 조회 2,136
16년 전 조회 2,336
16년 전 조회 1,485
16년 전 조회 1,294
16년 전 조회 2,207
16년 전 조회 4,922
16년 전 조회 2,199
16년 전 조회 2,856
16년 전 조회 1,736
16년 전 조회 3,588
16년 전 조회 4,426
16년 전 조회 3,095
16년 전 조회 2,341
16년 전 조회 2,421
16년 전 조회 2,672
16년 전 조회 2,159
16년 전 조회 5,501
16년 전 조회 3,352
16년 전 조회 1,345
🐛 버그신고