수행시간 체크

· 15년 전 · 2030
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,899
15년 전 조회 2,810
15년 전 조회 5,815
15년 전 조회 1,745
15년 전 조회 4,541
15년 전 조회 1,638
15년 전 조회 1,905
15년 전 조회 1,890
15년 전 조회 1,877
15년 전 조회 1,374
15년 전 조회 1,618
15년 전 조회 1,770
15년 전 조회 1,673
15년 전 조회 2,384
15년 전 조회 1,546
15년 전 조회 1,663
15년 전 조회 1,147
15년 전 조회 1,245
15년 전 조회 1,231
15년 전 조회 1,191
15년 전 조회 1,129
15년 전 조회 1,182
15년 전 조회 1,326
15년 전 조회 1,360
15년 전 조회 2,871
15년 전 조회 1,190
15년 전 조회 1,856
15년 전 조회 1,734
15년 전 조회 1,849
15년 전 조회 1,553
15년 전 조회 2,053
15년 전 조회 864
15년 전 조회 1,330
15년 전 조회 1,313
15년 전 조회 3,086
15년 전 조회 3,468
15년 전 조회 2,142
15년 전 조회 1,600
15년 전 조회 2,217
15년 전 조회 1,710
15년 전 조회 1,336
15년 전 조회 4,021
15년 전 조회 1,676
15년 전 조회 1,761
15년 전 조회 3,036
15년 전 조회 1,727
15년 전 조회 4,415
15년 전 조회 2,620
15년 전 조회 3,392
15년 전 조회 2,031
15년 전 조회 2,260
15년 전 조회 1,545
15년 전 조회 4,604
15년 전 조회 4,259
15년 전 조회 4,056
15년 전 조회 5,443
15년 전 조회 3,683
15년 전 조회 2,046
15년 전 조회 1,992
15년 전 조회 2,133
16년 전 조회 1,844
16년 전 조회 4,275
16년 전 조회 3,169
16년 전 조회 2,330
16년 전 조회 1,920
16년 전 조회 2,124
16년 전 조회 2,633
16년 전 조회 1,711
16년 전 조회 2,630
16년 전 조회 1,955
16년 전 조회 2,093
16년 전 조회 1,738
16년 전 조회 2,432
16년 전 조회 1,755
16년 전 조회 2,176
16년 전 조회 2,344
16년 전 조회 1,431
16년 전 조회 1,492
16년 전 조회 2,144
16년 전 조회 5,569
16년 전 조회 1,869
16년 전 조회 2,385
16년 전 조회 2,585
16년 전 조회 1,742
16년 전 조회 1,531
16년 전 조회 2,452
16년 전 조회 5,162
16년 전 조회 2,431
16년 전 조회 3,094
16년 전 조회 1,961
16년 전 조회 3,838
16년 전 조회 4,674
16년 전 조회 3,320
16년 전 조회 2,560
16년 전 조회 2,656
16년 전 조회 2,893
16년 전 조회 2,402
16년 전 조회 5,780
16년 전 조회 3,590
16년 전 조회 1,584