테스트 사이트 - 개발 중인 베타 버전입니다

현재 접속중인 사용자 나타내기

· 9년 전 · 5299 · 1

<?

 // Mysql DB 사용자 정보
 $db_host = "host_name";
 $db_user = "user_name";
 $db_passwd = "passwd";
 $db_name = "db_name";

 // 사용자의 정보를 갱신하는 시간 간격이다.
 $refresh_time = 30;

 // 접속이 끊긴 사용자의 한계시간.
 // 보통 리프레시 타임보다 5~10초 정도 많게 설정하면 된다.
 $kill_time = 40;

 // 데이타 베이스 연결
$connect = mysql_connect( $db_host , $db_user , $db_passwd ) or die ( "DB Server Error" );
 mysql_select_db( $db_name ) or die( "DB Error" );

 // 접속이 끊긴 사용자 삭제
$query = "DELETE FROM session WHERE (now() - last_time) > $kill_time";
 mysql_query( $query , $connect );

 // 현접속 사용자 확인
$query = "SELECT * FROM session WHERE ip = '$REMOTE_ADDR'";
 $result = mysql_query( $query , $connect );
 $total = mysql_affected_rows();

 // 이미 접속한 사용자라면...
if($total > 0)
 {
 // 마지막 접속 시간 갱신
$query = "UPDATE session SET last_time = now() WHERE ip = '$REMOTE_ADDR'";
 mysql_query( $query, $connect );
 }
 //처음 접속한 사용자
else
 {
 $query = "INSERT INTO session VALUES('$REMOTE_ADDR',now())";
 mysql_query( $query, $connect );
 }

 // 총 접속자수 계산
$query = "SELECT count(*) FROM session";
 $result = mysql_query( $query , $connect );
 $row = mysql_fetch_array( $result );

 mysql_close($connect);

 // 리프레쉬 해더
echo " <html><head> ";
 echo " <meta http-equiv='refresh' content='$refresh_time;url=$PHP_SELF'> ";
 echo " </head> ";

 echo " <body bgcolor=#CCCC99 text='blue'> ";
 echo " <center><font size=1>Now $row[0] Contact</font></center> ";
 echo " </body></html> ";

?> 

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 1개

5년 전
현재 접속중인 사용자 나타내기

게시글 목록

번호 제목
17927
17926
17922
17921
17915
17910
17907
17892
17888
17879
17878
17874
17873
17872
17871
17870
17869
17868
17866
17865
17864
17863
17862
17859
17856
17845
17835
17834
17826
17823