ASP에서 문자열을 거꾸로 출력하는 법


안녕하세요.
고코더 입니다.


 1. 한번도 이런 요구 사항을 받아 본적은 없지만 ASP상에서는 문자열을 거꾸로 출력하는 함수가 있습니다.
바로 이 함수입니다. 해당 함수 인자에 문자열을 넣으면 자동으로 문자가 거꾸로 나타납니다. 
StrReverse(문자열)


 2. 예제를 살펴봅니다. 그저 해당 인자에 문자열을 입력하면 준비 완료 입니다.
1
2
3
4
<%
str = "Gocoder.Net"
Response.Write StrReverse(str)
%>
cs

 3. 결과 화면입니다. 정확히 반대로 문자열을 출력합니다. 현업에서 만나보기 어려운 요구사항일거 같습니다.



마무리


로꾸꺼 


댓글을 달아 주세요


문자열을 여러번 출력하는걸 도와주는 함수


안녕하세요.
고코더 입니다.


 1. 만약에 ASP상에서 "========" 이런식으로 반복되어 여러번 출력하는 문자열을 표현하면 어떻게 하시겠나요?

첫번째 하드코딩으로 그냥 그대로 출력한다?
두번째 for문을 쓴다?

가장 간단하게 사용 가능한 String 함수를 사용한다가 정답입니다. 이 함수는 문자열을 원하는 숫자만큼 반복하여 실행 가능합니다
String(반복횟수, 문자열)


 2. 예제소스를 살펴보겠습니다. 문자열 그대로 반복한다면 큰 따옴표 안에 문자열을 넣습니다. 그리고 두번째는 아스키 코드 10진법을 코드를 넣으면 해당 문자열이 출력 됩니다.
1
2
3
4
5
<%
Response.Write String(10"G")
Response.Write String(1065)
%>
 
cs

 3. 과 화면입니다. 65는 아스키코드로 보면 A 입니다. 반복되는 문자열이 있을때는 해당 함수를 사용하세요. 편리합니다.



마무리


반복을 줄이는것이 프로그래밍의 기초중 하나 이므로 하드코딩은 금지!



댓글을 달아 주세요


숫자를 운영체제 통화로 치환


안녕하세요.
고코더 입니다.


운영체제가 한국이라면 이 함수를 사용한다면 원화로 숫자를 통화 형식으로 변경 할 수 있는 기능이 있는 함수입니다. 그런데 헷갈리는 부분이 있으니 예제를 통해 알아봅니다.

 1. 해당 함수가 오늘 배울 통화 형태로 나타나게 해줄 함수입니다.
FormatCurrency(숫자, 인수)
인수에 따라 기본 값과 1은 반올림을 하고 나머지는 소수점 자리를 노출합니다.
인수
설명
없음
소수점 없이 반올림
1
소수점 한자리 노출 후 반올림
2
소수점 두자리 노출 이후 숫자대로 소수점 노출


 2. 예제 소스를 실습합니다. 입력 숫자와 인수를 달리하여 작성합니다.

1
2
3
4
기본 값 : <%=FormatCurrency("1004.95")%> : 반올림 됨
인수 1 :<%=FormatCurrency("1004.86"1)%> : 소수점 한자리까지 노출하고 반올림
인수 2 : <%=FormatCurrency("1004.77"2)%> : 반올림 하지 않고 소수점 2자리 까지 노출
인수 3 : <%=FormatCurrency("1004.88"3)%> : 반올림 하지 않고 소수점 3자리 까지 노출
cs

 3. 결과 값은 아래와 같습니다. 결제를 위한 통화 형태를 보여주고 싶을때는 이 함수를 사용하면 편리하게 사용이 가능합니다. 



마무리


무엇보다 알아서 쉼표를 찍어주니 얼마나 좋나요.


댓글을 달아 주세요


8진수와 16진수로 바뀌는 숫자


안녕하세요.
고코더 입니다.


우리가 흔히 쓰는 숫자 체계는 10진수 입니다. 하지만 상황에 따라 진수를 다르게 하여 사용해야 할 경우가 있습니다.
그래서 ASP에서는 기본 함수로 8진수와 16진수로 변환하는 기능을 제공합니다. 

 1. 해당 사용방법은 해당 함수에 숫자만 넣으면 됩니다.
Oct(숫자)
Hex(숫자)


 2. 예제 소스를 확인해보겠습니다. 숫자 100을 넣어서 해당 진수로 변환하는 소스입니다. 
1
2
3
'//숫자 100을 변환 한 값
8진수 : <%=Oct(100)%>
16진수 : <%=Hex(100)%>
cs

 3. 결과 값은 아래와 같이 8진수와 16진수로 변환된 값을 확인 가능합니다.



마무리


오래된 언어지만 있을건 다 있는 프로그래밍 언어


댓글을 달아 주세요


변수 타입을 알아보는 명령어


안녕하세요.
고코더 입니다.


ASP는 변수를 자유롭게 사용하는 언어입니다. 값을 넣으면 알아서 타입을 지정해주는 편리한 구석이 있는데요. VB 기반이라 그런지 쉽게 구현되어 있습니다. 

 1. 그렇지만 변수도 타입을 분명히 가지고 있기 때문에 이를 확인하여 비교하거나 로직을 만들기도 합니다. 사용법은 해당 함수에 변수만 넣어주면 숫자를 반환하여 타입을 말해줍니다.
VarType(변수)

 2. 예제를 한번 만들어서 실행해보겠습니다. 
1
2
3
4
5
6
7
8
9
10
11
12
<% var = "GoCoder" %>   
타입 : <%=VarType(var)%> <br>
 
<% var=1234 %>
타입 : <%=VarType(var)%> <br>
 
<% var=123456789 %>
타입 : <%=VarType(var)%> <br>
 
<% var=true %>
타입 : <%=VarType(var)%> <br>
 
cs


 3. 결과 화면입니다. 타입에 따라 반환되는 숫자가 다른걸 알 수 있습니다.


 4. 해당 반환하는 숫자와 관련된 타입입니다. 아래 표를 확인해보세요.
의미
설명
vbEmpty
0
uninitialized data type
vbNull
1
contains no valid data
vbInteger
2
Integer data type
vbLong
3
Long data type
vbSingle
4
Single data type
vbDouble
5
Double data type
vbDate
7
Date data type
vbString
8
String data type
vbObject
9
Object data type
vbBoolean
11
Boolean data type
vbVariant
12
Variant data type
vbByte
17
Byte data type
vbArray
8192
Array data type


마무리


타입이 그다지 중요하지 않게 사용되는 ASP


댓글을 달아 주세요


날짜 표현 함수 


안녕하세요.
고코더 입니다.


오늘은 ASP에서 자주 사용하는 날짜와 시간을 표현하는 함수를 알아보려고 합니다. 현업에서도 자주 사용하는 함수입니다. 한번만 정리해놓으면 찾아서 사용하기 쉽겠네요. 

 1. 오늘 배워볼 함수입니다. 포맷데이터타임 외우기도 쉽네요.
FormatDateTime(날짜,인수)
해당 함수가 리턴하는 값에 대한 정보입니다. 날짜를 입력하고 변수에 따라서 다양한 방식으로 결과 값을 출력 합니다. 

인수

표현 형식
표현 형식
0
기본 표현식 
2020-03-25 오후 6:42:36
1
윈도우 날짜 형식으로 표현 
2020년 3월 25일 수요일
2
날짜만 간단하게 표현
2020-03-25
3
윈도우 시간형식으로 표현
오후 6:42:36
4
시간만 표현
18:42


 2. 해당 함수를 이용한 예제 소스입니다. 작성해보세요.
1
2
3
4
5
인수 0 : <%=FormatDateTime(now(), 0)%>
인수 1 : <%=FormatDateTime(now(), 1)%>
인수 2 : <%=FormatDateTime(now(), 2)%>
인수 3 : <%=FormatDateTime(now(), 3)%>
인수 4 : <%=FormatDateTime(now(), 4)%>
cs

 3. 브라우저에 표현된 노출 값 입니다. 대부분 ASP에서는 해당 포맷을 사용해 날짜를 표현하게 됩니다.



마무리


시간 잘 가네


댓글을 달아 주세요


ASP에서 변수를 상수로 지정해보자


안녕하세요.
고코더 입니다.


ASP에도 상수라는 개념이 존재합니다. 그런데 현업에서는 생각보다 많이 사용하지 않는걸 목격 합니다. 그래서 오늘은 상수를 좀 더 대중화 하기 위해 Const에 대해 알아봅니다.


상수란?


위키가 말하는 정리입니다. 

"수학에서 상수란 그 값이 변하지 않는 불변량으로, 변수의 반대말이다."

정확합니다. 변하지 않는 값을 말합니다. 실무에서는 PG(전자결재) 고유 ID 값을 상수로 지정하는 경우가 많습니다.



Const


 1. ASP는 Const라는 녀석으로 상수 사용이 가능합니다. 변수를 선언하는 자리에 대신 놓으면 그걸로 끝입니다. 바로 한번 테스트 해볼까요?

 2. 해당 소스에서 GOCODER에 값을 입력했습니다. 상수는 현업에서 보통 대문자로 변수 이름을 만드는게 관례입니다. 
1
2
3
4
5
6
<%
OPTION EXPLICIT
 
Const GOCODER = "GoCoder.Net"
Response.Write GOCODER
%>
cs

● 3. 결과 값은 오류 없이 나옵니다.



● 4. 이번에는 이 상수에 값을 재입력해보겠습니다.
1
2
3
4
5
6
7
<%
OPTION EXPLICIT
 
Const GOCODER = "GoCoder.Net"
Response.Write GOCODER
GOCODER = "gocoder.tistory.com"
%>
cs

 5. 당연히 오류가 납니다. 상수는 변하지 않은 값이기에 이를 변화시키려고 했기 때문입니다.



마무리


변하면 안되는 중요한 값은 상수로 지정하세요.


Tag ASP, const, 상수

댓글을 달아 주세요


변수 선언을 필수로 하는 ASP 옵션 명령어


안녕하세요.
고코더 입니다.



 1. ASP의 기본 설정은 변수를 따로 지정하지 않아도 알아서 변수를 받아 사용이 가능합니다.
덕분에 개발자는 무지 편리하지만 사이트 성능은 느려질 수 밖에 없습니다. 코드를 해석하는 과정에서 불필요한 프로세스가 동작하기 때문입니다.
그래서 ASP에서는 "OPTION EXPLICIT" 라는 명령어를 만들어 두었습니다. 

 2. 이 옵션을 선언하면 변수 선언을 선행하지 않으면 오류를 발생시킵니다.
OPTION EXPLICIT

 3. 아래 코드를 실행합니다. var1만 변수 선언을 하지 않았지만 오류가 나지 않을 것입니다.
1
2
3
4
5
6
7
8
9
10
<%
Dim var1
 
var1 = "Gocoder"
var2 = "ITExpress"
 
response.write var1
response.write var2
%>
 
cs


 4. 결과 값도 역시 잘나옵니다. 


 5. 이제 변수를 강제하는 옵션을 넣으면 어떻게 될까요? 
1
2
3
4
5
6
7
8
9
10
11
<%
OPTION EXPLICIT
 
Dim var1
 
var1 = "Gocoder"
var2 = "ITExpress"
 
response.write var1
response.write var2
%>
cs


 6. 역시 오류가 납니다. var2라는 변수가 정의되지 않았다고 합니다. 




마무리


해당 옵션을 사용 해야 하냐고요? 제 생각은 강제하는게 좋아 보입니다.



댓글을 달아 주세요


네이버 쇼핑 API 파싱 샘플


안녕하세요.
고코더 입니다.


제 홈페이지 묻고 답하기 게시판에
첫 글이 올라왔습니다.

ASP 팁 강의를 좀더 다뤄 달라고 하는 요청이었습니다.
제 에버노트에 정리한 ASP 개인 레퍼런스 문서를
거의 블로그에 올려서 쓸게 없지만

▼고코더의 에버노트 ASP노트북 일부분 모습 


잘 찾아보니 네이버 쇼핑 API를 파싱했던 예제가 있어 올립니다.
사실 큰 도움이 안될 수도 있는 소스 이지만
누군가에게는 시간을 아끼는 귀중한 자료가 되길
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<%
  Set objXmlHttp = server.CreateObject("Msxml2.ServerXMLHTTP.3.0")
  objXmlHttp.open "POST""http://openapi.naver.com/search?key=APIkey&query="& Replace(goodsname,"&","")&"&display=5&start=1&target=shop&sort=asc"false
 
  objXmlHttp.setRequestHeader "Content-Type""application/x-www-form-urlencoded"
  objXmlHttp.send
  strResponseText = objXmlHttp.responseText
  Set objXmlHttp = Nothing
 
  Set objMsXmlDom = Server.CreateObject("microsoft.XMLDOM")
  objMsXmlDom.async = false
  objMsXmlDom.loadXML(strResponseText)
 
  If len(strResponseText) < 400 Then
       refer_title= "상품명이 잘못됐거나, 상품명에 맞는 XML이 없습니다." '& Trim( objMsXmlDom.getElementsByTagName("channel/item/title").Item(0).TeXt)
       refer_link = "상품명이 잘못됐거나, 상품명에 맞는 XML이 없습니다." '& Trim( objMsXmlDom.getElementsByTagName("channel/item/link").Item(0).Text)
       refer_image = "상품명이 잘못됐거나, 상품명에 맞는 XML이 없습니다." '& Trim( objMsXmlDom.getElementsByTagName("channel/item/image").Item(0).Text)
       refer_lprice = 0
       refer_mallName = "상품명이 잘못됐거나, 상품명에 맞는 XML이 없습니다." '& Trim( objMsXmlDom.getElementsByTagName("channel/item/mallName").Item(0).Text)
       refer_productId = "상품명이 잘못됐거나, 상품명에 맞는 XML이 없습니다." '& Trim( objMsXmlDom.getElementsByTagName("channel/item/productId").Item(0).Text)
       refer_productType = "상품명이 잘못됐거나, 상품명에 맞는 XML이 없습니다." '& Trim( objMsXmlDom.getElementsByTagName("channel/item/productType").Item(0).Text)
 
  Else
       '추출 (getElementsByTagName("xml엘리먼트명"))
       refer_title= "" & Trim( objMsXmlDom.getElementsByTagName("channel/item/title").Item(0).TeXt)
       refer_link = "" & Trim( objMsXmlDom.getElementsByTagName("channel/item/link").Item(0).Text)
       refer_image = "" & Trim( objMsXmlDom.getElementsByTagName("channel/item/image").Item(0).Text)
       refer_lprice = "" & Trim( objMsXmlDom.getElementsByTagName("channel/item/lprice").Item(0).Text)
       refer_mallName = "" & Trim( objMsXmlDom.getElementsByTagName("channel/item/mallName").Item(0).Text)
       refer_productId = "" & Trim( objMsXmlDom.getElementsByTagName("channel/item/productId").Item(0).Text)
       refer_productType = "" & Trim( objMsXmlDom.getElementsByTagName("channel/item/productType").Item(0).Text)
      
  End If
  Set objMsXmlDom = Nothing
%>
cs






마무리


많이 질문해주세요
최대한 다 다뤄보겠습니다!!



댓글을 달아 주세요


.asp 말고 .gocoder 로 한번 바꿔 보기 


안녕하세요. 고코더 입니다.


어떤 사이트를 보면 언어 기본 확장자를 
자신의 서비스 이름으로 바꾸어 놓은 경우가 있습니다.

네이버가 대표적인 경우인데요

▼ 네이버 회사 모기업 이름인 .nhn을 사용하는 모습입니다. 


그래서 오늘은 오래된 웹언어인 .asp 를 
제 스타일대로 .gocoder로 바꿔보려고 합니다.

▼ 사이트에서 기능보기 탭에서 처리기 매핑을 클릭 합니다.


▼ 그리고 나오는 오른쪽 위에 "스크립트 매핑 추가"를 클릭 합니다.



▼ 해당 스크립트 매핑에 이렇게 입력해보세요
1. 요청경로
    *.gocoder
2. 실행파일
    %windir%\system32\inetsrv\asp.dll
3. 이름 
    GoCoder


▼ 처리기 매핑에 아래처럼 gocoder 라는 언어가 추가 되었습니다.



▼ 파일을 만들어 보겠습니다.
파일을 생성하니 처리기 매핑에서 이름을 GoCoder로 한게 유형으로 나와있네요.


▼ 소스안에 코딩 내용은 아래와 같습니다.
<%
response.write "고코더 IT Express"
response.end
%>
▼ 해당 파일을 웹에서 실행 하였습니다.



마무리


고코더 언어 만들고 싶네요 ㅎ


댓글을 달아 주세요