Asp객체 & 전역변수(global.asa) > 기술자료 | 해피정닷컴

Asp객체 & 전역변수(global.asa) > 기술자료

본문 바로가기

사이트 내 전체검색

Asp객체 & 전역변수(global.asa) > 기술자료

ClassicASP Asp객체 & 전역변수(global.asa)

페이지 정보


본문

1. Asp 객체
Request
Response
Server
Application   클라이언트에 공통으로 적용(=DB)
Session       클라이언트에 개별적으로 적용
 
 
2. 전역변수 (파일공유 전역변수) : 모든페이지에 적용됨
 
전역변수를 적용 할 수 있는 객체는 Application / Session 객체가 있다!
Application 클라이언트에 공통으로 적용(=DB)
Application("변수명")
 
Session 클라이언트에 개별적으로 적용
Session("변수명")   // 기본20분 유지
 
session.sessionid
클라이언트 브라우저 접속시 할당되는 id값으로 브라우저가 닫힐때 소멸된다.! (장바구니 기능등...에 용이)
 
Application & Session - 전역변수 설정 유지
세션초기값 설정페이지 - global.asa 로 작성
 
이벤트로 제어
초기값 부여할때 쓰이는 global.asa 는 처음접속시 있으면 거쳐가고 없으면 그냥 무시하고 접속하게 된다.
 
 
3. global.asa
3-1. 자바스크립트
function 함수명(){
  return 값;
}
 
3-2. VB스크립트
function 함수명()    // 리턴할수 있음
end function
 
Sub 함수명()    // 리턴할수 없음
End Sub
 
 
4. global.asa 예제
<script language=VBscript runat=Server>  'runat=Server"는 서버에서 돌아가라는 뜻!
Sub Application_OnStart  '최초 클라이언트의 접속
  '어플리케이션 변수 설정시작
  '필요없으시면 빼도 됩니다.
  Application.Lock
  Application.contents("current_user") = 0
  Application.Unlock
End Sub
 
 
Sub Session_OnStart  '개인별 클라이언트의 접속
  Session.Timeout=30 '유지시간설정 (기본은 20분)
  'Session("uid")="guest" 
  'static_table = "ccssof_static"
 
  '연결개체 생성
  Set db = Server.CreateObject("ADODB.Connection")
  db.provider = "SQLOLEDB.1" 'SQL서버를 쓴다면 보통 이렇게 쓴다.
  db.Open("Persist Security Info=False;User ID=디비ID;password=디비PW;Data Source=디비IP")
  db.defaultDatabase = "디비name"
 
  '회원통계테이블에서 오늘날짜에 현재시간에 저장되어있는 레코드가 있는지 알아보는 쿼리
  SQL = "SELECT * FROM "&static_table
  SQL = SQL&" WHERE s_year= year(getdate())"
  SQL = SQL&"and s_month=month(getdate()) and s_day = day(getdate()) and s_time = datepart(hh,getdate())"
 
  Set rs= Server.CreateObject("ADODB.Recordset")
  '###레코드 셋 열기
  rs.Open SQL,db
  If rs.eof or rs.bof Then '오늘날짜와 현재시간에 해당하는 레코드가 없다면 레코드 추가
    SQL = "INSERT INTO "&static_table&" DEFAULT VALUES "
  ELSE '아니면 해당레코드에 카운드 1증가
    s_idx = rs("s_idx")
    SQL = "UPDATE "&static_table
    SQL = SQL & " SET s_count=s_count + 1 WHERE s_idx="&s_idx
  End If
  rs.close
  Set rs = nothing
 
  '#### 연결객체를 이용한 쿼리실행(빠른실행을 위해 레코드셋객체를 만들지 않음)
  db.Execute SQL
  db.close
  Set db = nothing
 
  '현재 접속자수 계산 루틴
  '필요없다면 다음 루틴 제거
  If isnull(Application.contents("current_user")) Then
    Application.Lock
    Application.contents("current_user") = 1
    Application.UnLock    
  Else
    Application.Lock    
    Application.contents("current_user") = Application.contents("current_user") + 1
    Application.Lock        
  End If
End Sub
 
 
Sub Session_OnEnd   '개인별 클라이언트의 접속종료
  '현재 접속자수 계산 루틴
  '필요없다면 다음 루틴 제거
  
  If isnull(Application.contents("current_user")) Then
    Application.Lock
    Application.contents("current_user") = 0
    Application.Unlock
  Else
    Application.Lock
    Application.contents("current_user") = Application.contents("current_user") - 1
    Application.UnLock
  End If
End Sub
 
Sub Application_OnEnd  '최종 클라이언트의 접속
End Sub
</script>
 
 
참고자료

댓글목록

등록된 댓글이 없습니다.


Total 2,643건 111 페이지
  • RSS
기술자료 목록
443
ClassicASP   13010  2008-03-29 16:40  
열람
ClassicASP   27328  2008-03-24 17:55 ~ 2012-05-18 00:00  
441
ClassicASP   13029  2008-03-21 08:36  
440
일반   13550  2008-03-21 08:34 ~ 2018-07-10 21:24  
439
MSSQL   31850  2008-03-18 12:20  
438
WindowsServer   13748  2008-03-18 12:18  
437
ClassicASP   30608  2008-03-14 14:53 ~ 2018-03-24 04:08  
436
ClassicASP   14142  2008-03-13 08:04  
435
WindowsServer   13877  2008-03-13 21:47  
434
ClassicASP   12159  2008-03-13 07:31  
433
일반   16024  2008-03-11 16:37  
432
ClassicASP   30902  2008-03-09 18:44 ~ 2018-05-15 14:37  
431
ClassicASP   23536  2008-03-08 10:40 ~ 2013-11-28 00:00  
430
ClassicASP   25294  2008-03-08 10:34 ~ 2014-07-08 00:00  
429
그누보드   13431  2008-03-07 17:38 ~ 2008-03-17 00:00  
428
그누보드   16398  2008-03-05 21:37 ~ 2021-07-14 18:37  
427
그누보드   12452  2008-02-14 20:33  
426
그누보드   13823  2008-02-14 14:45  
425
Adobe   20010  2008-02-11 21:16  
424
그누보드   18099  2008-02-11 21:25 ~ 2008-02-20 00:00  

검색

해피정닷컴 정보

회사소개 회사연혁 협력사 오시는길 서비스 이용약관 개인정보 처리방침

회사명: 해피정닷컴   대표: 정창용   전화: 070-7600-3500   팩스: 042-670-8272
주소: (34368) 대전시 대덕구 대화로 160 대전산업용재유통단지 1동 222호
개인정보보호책임자: 정창용   사업자번호: 119-05-36414
통신판매업신고: 제2024-대전대덕-0405호 [사업자등록확인]  
Copyright 2001~2025 해피정닷컴. All Rights Reserved.