수행시간 체크

· 15년 전 · 2042
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,907
15년 전 조회 2,827
15년 전 조회 5,825
15년 전 조회 1,754
15년 전 조회 4,558
15년 전 조회 1,649
15년 전 조회 1,912
15년 전 조회 1,898
15년 전 조회 1,888
15년 전 조회 1,380
15년 전 조회 1,625
15년 전 조회 1,776
15년 전 조회 1,679
15년 전 조회 2,393
15년 전 조회 1,557
15년 전 조회 1,677
15년 전 조회 1,155
15년 전 조회 1,256
15년 전 조회 1,240
15년 전 조회 1,201
15년 전 조회 1,141
15년 전 조회 1,189
15년 전 조회 1,334
15년 전 조회 1,374
15년 전 조회 2,880
15년 전 조회 1,205
15년 전 조회 1,863
15년 전 조회 1,742
15년 전 조회 1,857
15년 전 조회 1,569
15년 전 조회 2,060
15년 전 조회 879
15년 전 조회 1,340
15년 전 조회 1,325
15년 전 조회 3,094
15년 전 조회 3,483
15년 전 조회 2,167
15년 전 조회 1,610
15년 전 조회 2,227
15년 전 조회 1,719
15년 전 조회 1,345
15년 전 조회 4,033
15년 전 조회 1,694
15년 전 조회 1,767
15년 전 조회 3,052
15년 전 조회 1,741
15년 전 조회 4,424
15년 전 조회 2,631
15년 전 조회 3,403
15년 전 조회 2,043
15년 전 조회 2,272
15년 전 조회 1,553
15년 전 조회 4,617
15년 전 조회 4,270
15년 전 조회 4,068
15년 전 조회 5,452
15년 전 조회 3,695
15년 전 조회 2,054
15년 전 조회 2,003
15년 전 조회 2,147
16년 전 조회 1,850
16년 전 조회 4,290
16년 전 조회 3,176
16년 전 조회 2,342
16년 전 조회 1,931
16년 전 조회 2,137
16년 전 조회 2,639
16년 전 조회 1,719
16년 전 조회 2,641
16년 전 조회 1,966
16년 전 조회 2,100
16년 전 조회 1,746
16년 전 조회 2,440
16년 전 조회 1,762
16년 전 조회 2,188
16년 전 조회 2,349
16년 전 조회 1,438
16년 전 조회 1,506
16년 전 조회 2,150
16년 전 조회 5,573
16년 전 조회 1,878
16년 전 조회 2,395
16년 전 조회 2,596
16년 전 조회 1,749
16년 전 조회 1,540
16년 전 조회 2,457
16년 전 조회 5,170
16년 전 조회 2,443
16년 전 조회 3,105
16년 전 조회 1,975
16년 전 조회 3,846
16년 전 조회 4,684
16년 전 조회 3,332
16년 전 조회 2,565
16년 전 조회 2,660
16년 전 조회 2,902
16년 전 조회 2,411
16년 전 조회 5,791
16년 전 조회 3,599
16년 전 조회 1,590