수행시간 체크

· 15년 전 · 1763
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,623
15년 전 조회 2,512
15년 전 조회 5,497
15년 전 조회 1,464
15년 전 조회 4,227
15년 전 조회 1,357
15년 전 조회 1,651
15년 전 조회 1,619
15년 전 조회 1,607
15년 전 조회 1,113
15년 전 조회 1,361
15년 전 조회 1,502
15년 전 조회 1,406
15년 전 조회 2,134
15년 전 조회 1,278
15년 전 조회 1,334
15년 전 조회 880
15년 전 조회 991
15년 전 조회 952
15년 전 조회 919
15년 전 조회 869
15년 전 조회 929
15년 전 조회 1,072
15년 전 조회 1,094
15년 전 조회 2,612
15년 전 조회 937
15년 전 조회 1,590
15년 전 조회 1,461
15년 전 조회 1,581
15년 전 조회 1,291
15년 전 조회 1,779
15년 전 조회 595
15년 전 조회 1,082
15년 전 조회 1,055
15년 전 조회 2,849
15년 전 조회 3,160
15년 전 조회 1,836
15년 전 조회 1,343
15년 전 조회 1,960
15년 전 조회 1,466
15년 전 조회 1,072
15년 전 조회 3,765
15년 전 조회 1,407
15년 전 조회 1,506
15년 전 조회 2,733
15년 전 조회 1,430
15년 전 조회 4,156
15년 전 조회 2,370
15년 전 조회 3,145
15년 전 조회 1,764
15년 전 조회 1,994
15년 전 조회 1,293
15년 전 조회 4,370
15년 전 조회 3,950
15년 전 조회 3,772
15년 전 조회 5,186
15년 전 조회 3,408
15년 전 조회 1,789
15년 전 조회 1,748
15년 전 조회 1,896
15년 전 조회 1,588
15년 전 조회 3,987
15년 전 조회 2,899
15년 전 조회 2,084
15년 전 조회 1,660
15년 전 조회 1,898
15년 전 조회 2,380
15년 전 조회 1,462
15년 전 조회 2,395
15년 전 조회 1,731
15년 전 조회 1,829
15년 전 조회 1,479
15년 전 조회 2,172
15년 전 조회 1,499
15년 전 조회 1,919
16년 전 조회 2,109
16년 전 조회 1,183
16년 전 조회 1,245
16년 전 조회 1,889
16년 전 조회 5,334
16년 전 조회 1,634
16년 전 조회 2,142
16년 전 조회 2,343
16년 전 조회 1,492
16년 전 조회 1,300
16년 전 조회 2,214
16년 전 조회 4,930
16년 전 조회 2,205
16년 전 조회 2,860
16년 전 조회 1,743
16년 전 조회 3,594
16년 전 조회 4,433
16년 전 조회 3,100
16년 전 조회 2,346
16년 전 조회 2,429
16년 전 조회 2,678
16년 전 조회 2,163
16년 전 조회 5,505
16년 전 조회 3,359
16년 전 조회 1,350
🐛 버그신고