먼저 새로운 ACCESS 데이터베이스를 생성해 보겠습니다.
내용은
테이블 이름: zai
필드는 다음과 같습니다.
1.ip
2.시간
index.asp로 파일 만들기
그런 다음 아래 절차를 따르십시오!
<%
'================================================ = ================================================ =
'
'************************ Bingling 온라인 인원 계산 프로그램 V2.0 ***************** *** **********
'
'본 사이트의 프로그램은 "빙링스튜디오" - 아이스크림 검객이 독자적으로 제작한 프로그램입니다! 노동의 결실을 존중해주세요
'
' "빙링스튜디오"─━╃→강력함으로 개성을 창조하다
'
*작가 : 아이스크림검객
* 홈페이지 : http://www.blbcn.com
'* 이메일: [email protected]
'* QQ:68156987
'* 주소: 장쑤성 우시
'************************************************ * ******************************
'
'저작권·표절·도용도 조사하겠다'
'
'================================================ = ================================================ =
'---------변수 정의
조광기
딤프
희미한 시간 초과
희미한 x
희미한 콘
희미한 경로
'---------변수 정의 끝
'---------추천 데이터베이스 링크
conn=server.createobject(adodb.connection) 설정
DBPath = Server.MapPath(zai.mdb)
conn.Open 드라이버={Microsoft Access 드라이버(*.mdb)};dbq= & DBPath
'---------데이터베이스 링크 구축 완료
'---------새 데이터베이스 RS 개체 만들기
rs = server.createobject(adodb.recordset) 설정
'---------데이터베이스 RS 개체 생성이 완료되었습니다.
'---------클라이언트 IP 주소 읽기
ip = Request.ServerVariables(HTTP_X_FORWARDED_FOR) '상대방이 프록시 서버를 사용하여 인터넷에 접속하는 경우 상대방이 프록시 서버를 통해 인터넷에 접속하지 않는 경우 Request.ServerVariables(HTTP_X_FORWARDED_FOR)를 사용하여 상대방의 실제 IP를 가져옵니다. , IP 값이 비어 있습니다.
If ip = Then ip = Request.ServerVariables(REMOTE_ADDR) 'IP 값이 비어 있으면 로컬 클라이언트 주소를 가져옵니다.
'---------IP 읽기 완료
'---------지난 20분 동안 데이터베이스에 추가된 새로운 콘텐츠 수를 읽어 ip-table별로 그룹화하면 IP 값이 1과 같습니다.
sql=zai에서 IP 선택(시간 >= dateadd('n',-20,now())) IP별로 그룹화
rs.SQL 열기, conn,1,1
zai=rs.RecordCount
RS.닫기
'---------온라인 인원수 확인
'---------데이터베이스에 이미 동일한 값이 있는지 확인합니다. 없으면 x=yes, 없으면 x=no
sql=zai에서 IP를 선택합니다. 여기서 ip=' & ip & '
rs.SQL,conn,1,1 열기
rs.eof 및 rs.bof인 경우
x=예
또 다른
x=아니요
종료하면
RS.닫기
'---------판결 완료
'---------데이터베이스에 동일한 값이 없으면 새 값을 추가합니다.
if x=yes then' 해당 IP가 없으면 레코드를 추가합니다.
sql=zai에서 상위 1개 * 선택
rs.SQL,conn,1,3 열기
rs.새로 추가
RS(IP)=아이피
rs(시간)=지금()
RS.업데이트
RS.닫기
else '이 IP가 있으면 시간을 현재 시간으로 변경
sql=select * zai에서 ip=' & ip & '
rs.SQL,conn,1,3 열기
rs(시간)=지금()
RS.업데이트
RS.닫기
종료하면
'---------가입이 완료된 것으로 판단
'---------20분 전에 추가된 값을 삭제합니다.
시간 초과 = dateadd(n, -20, now())
sql=delete * from zai where time < # & timeout & #
conn.SQL 실행
'---------삭제 완료
'---------데이터 개체 닫기
rs=아무것도 설정하지 않음
연결.닫기
conn=아무것도 설정하지 않음
%>
document.write(온라인에 있는 총 <%=zai%> 명)
좋아요!
완료!