레이블이 ASP인 게시물을 표시합니다. 모든 게시물 표시
레이블이 ASP인 게시물을 표시합니다. 모든 게시물 표시

2017년 4월 3일 월요일

ASP : 날자 형식을 "yyy-MM-dd hh:mm:ss" 형식으로 조회

Asp 페이지에서 현재 시간을 "yyyy-MM-dd hh:mm:ss" 형태로 조회 하고 싶은데 잘 안된다.

흔히 사용하는 formatdatetime 으론 "2017-04-01 오전 10:03:20" 이런 형태로 출력이 된다.

이럴때 사용한 소스

원본 : http://www.songtory.com/post/001001/1/127

Response.Write get_DateTimeFormat(Now(), "")

Function get_DateTimeFormat(obj_date, dateFormat)
Dim reValue

if false = IsDate(obj_date) then
obj_date = now
end if

if dateFormat = "" then
dateFormat = "yyyy-mm-dd h:n:s"
end if

reValue = Replace(dateFormat, "yyyy", Year(obj_date))
reValue = Replace(reValue, "mm", right("0" & Month(obj_date) , 2))
reValue = Replace(reValue, "dd", right("0" & Day(obj_date) , 2))
reValue = Replace(reValue, "h", right("0" & Hour(obj_date) , 2))
reValue = Replace(reValue, "n", right("0" & Minute(obj_date) , 2))
reValue = Replace(reValue, "s", right("0" & Second(obj_date) , 2))

get_DateTimeFormat = reValue

End Function


음... 잘된다.

ASP : IIS7 에서 상세 오류 메시지가 출력되지 않을 때.

IIS7 에서 ASP 파일의 오류가 나타 나지 않는다.


이럴때는... IIS 관리 페이지에서...


"ASP" 를 선택하고...


"디버깅 속성" 중에 "브라우저에 오류 전송" 을 "True" 로 지정하면 된다.



ASP : IIS7 에서 ABCUpload 를 설치하니, "ActiveX 구성 요소는 개체를 작성할 수 없습니다." 오류 발생.

 IIS7 에서 ABCUpload 를 설치하니, "ActiveX 구성 요소는 개체를 작성할 수 없습니다." 오류가 난다.

일단 IIS 관리자로 가서 ...


 "응용 프로그램 풀" 의 "기본값 설정" 메뉴로 이동.


거기서 "32비트 응용 프로그램 사용" 항목을 "True" 로 지정해 주면 된다.


2016년 4월 25일 월요일

ASP : 웹 페이지 한글이 깨질때.

한국에서 프로그래밍은 언제나 한글과의 싸움이 빠지지 않는다.
영어를 기준으로 개발된 컴퓨터 언어라서 변방의 작은 힘없는 나라의 주민으로썬 그냥 어떻게든 해결해 보는 수 밖에 없다.

요즘은 그나마 UTF-8 로 통일되는 추세라 C# 같은 요즘 개발 언어는 그나마 좀 나은편...
하지만 여전히 ASP 는 오류가 발생한다.

암튼 웹페이지를 불러 오니 한글이 깨진다.


요렇게.
보통은 스크립트 파일을 저장할 때, "UTF-8" 로 저장하지 않아 이런 현상이 생기는 경우가 많지만, 확인 해보니 당연히 파일은 UTF-8 로 저장이 되어 있고, DB 에 저장된 한글도 문제 없음.


스트립트도 이렇게 "utf-8" 로 지정되어 있음.
이렇게 하면 왠만하면 한글로 나오건만, 이렇게 해도 한글이 깨지는 경우가 있다.

이러면 최후의 방법으로 ASP 헤더에도 코드 값을 지정해 보는 수 밖에 없음.



<%@ CODEPAGE=65001%>
<%response.charset = "utf-8"%>


요렇게....


그럼 이렇게 한글이 나옴...
이거 마져 안되면 딱히 방법이 없음.

2015년 1월 26일 월요일

ASP 캐쉬 삭제.

요즘은 asp 를 별로 손댈일이 없지만, 아직도 가끔은 만져야 할때가 있다.

그럴때 마다 속썩이는 것이, IIS 의 ASP 의 서버 캐쉬가 참으로 얄궂게 작동하는 경우가 있을때다.
말하자면, 서버의 소스는 수정해 놨는데, 실제로 페이지를 불러와 보면 수정해 놓은 것이 반영이 안되어 있는 경우가 있다.

물론, 이건 서버 캐쉬 문제인데... 이건 로컬 캐쉬도 아니라서 사용자 PC 의 캐쉬를 삭제한다고 해서 해결되지 않는다.

이럴경우 보통은


<%
 Response.Expires = 0
 Response.ExpiresAbsolute = now() - 1
 Response.AddHeader "pragma","no-cache"
 Response.AddHeader "cache-control","private"
 Response.CacheControl = "no-cache"
 Response.Buffer = True
 Session.Timeout = 60 
%>


이 코드를 최상단에 놓으면 해결된다.

이걸로도 안될때는 IIS 서버 설정에서 "캐쉬사용안함" 을 설정해면 어지간하면 해결되었는데...
아... 근데... 이게... IIS7 에서는 어디로 가버렸는지 못찾겠다.


이렇게 출력캐시를 막으면 된다고는 하는데...

이건 나도 안해봐서 잘 모르겠음...

2014년 4월 22일 화요일

ASP 에서 JSON 쓰는법

기본저으로 Asp 에서 Json 은 지원되지 않는다.
그러나 많은 사람들이 Json 을 사용할 수 있는 함수를 구현해 공개 해놓아서 그럭 저럭 쓸수 있다.
M$가 공식적으로 지원하는건 아니라서 약간 불안한 감은 없지 않아 있지만, 대략 100개 항목 정도를 보내고 받는데는 그다지 문제가 없었다.

첨부파일 : json.zip

이전에 프로젝트 할때 어디선가 받아서 쓴 파일인데... 도저히 원 배포처를 못찾겠다....

하여간...



<%
   Dim getJson
   Dim strData

   strData = REQUEST("u1")
   '//strData = "{""row"":[{""saveid"":""21655"",""get_import"":""KD200220"",""get_packer"":""KD420100""}]}"

   Set getJson = JSON.parse(strData)

   saveid = getJson.row.get(0).saveid
   get_import = getJson.row.get(0).get_import
   get_packer = getJson.row.get(0).get_packer
%>

 <%=get_import%>
 <%=get_packer%>
 <%=saveid%>


이런 식으로 쓰면 된다.

2014년 4월 13일 일요일

웹 페이지 엑셀 다운로드시 숫자를 문자로 출력

웹 페이지를 엑셀로 저장하여 다운로드 받는 기능을 구현 했을 때.
아주 긴 숫자(아주 큰값)를 출력했을 경우 "3.0001E+11" 과 같이 표시가 될 경우가 있다.

이 경우 "Response.BinaryWrite(Encoding.Unicode.GetPreamble());" 속성을 추가하면 해결할 수 있다.

Response.AddHeader("content-disposition", "attachment;filename=FileName.xls");
Response.Charset = "euc-kr"; 
Response.ContentEncoding = Encoding.Unicode;
Response.BinaryWrite(Encoding.Unicode.GetPreamble());
Response.ContentType = "application/vnd.ms-excel";