2009년 4월 12일 일요일

[ASP] 랜덤함수를 이용한 랜덤값 생성

//한자리값 한자리값을 랜덤으로 생성후 붙여나가는 방식 => 1 A 2 B 3 -> 1A2B3  
//주문코드 xxx-xxx이런식으로 만들고 싶다면 아래 주석을 제거해서 넣으면 되겠다.

<%
  Dim str,code,strlen,r
  Dim rCnt
  str = "123456789ABCDEF"
  strlen = 6  '자릿수

  Randomize  '랜덤초기화
  For i = 1 To strlen
  r = Int((15-1+1) * Rnd + 1) '15는 str의 갯수
  'Response.Write Mid(str,r,1)   '랜덤으로 추출된 하나의 값 확인 최종적으로는 모두 덧붙여진 값이 확인됨
  code = code+Mid(str,r,1)

'  3자리수마다 - 를 붙이고 싶다면 이 주석을 제거
'  if rCnt = 3 then
'    code = code + "-"
'    rCnt = 0
'  else
'    rCnt = rCnt + 1

  Next
  response.write "<script>alert('"& code &"')</script>"    '생성된 코드를 스크립트 경고창으로 확인
%>

위의 경우는 시스템적으로 처리하는 분량이 좀 많다고 볼수 있다.
단순하게 랜덤함수를 생성하고 싶다면
<%
Dim code
  Randomize  '랜덤초기화
  code = 랜덤숫자범위 * Rnd  '랜덤숫자범위내에서 랜덤으로 숫자를 추출
  code = Hex(16777216 * Rnd)  '컴퓨터에서 사용되는 색상컬러값으로 추출하고 싶을때
 

%>

댓글 없음:

댓글 쓰기