'ASP'에 해당되는 글 6건

  1. 2010.05.27 [ASP] Err 객체
  2. 2009.10.08 ASP에서 엑셀파일 업로드후 데이터베이스에 입력을 할려고 하는데! 2
  3. 2009.09.22 ON ERROR RESUME NEXT
  4. 2009.08.12 [ASP] read/write configuration class (xml version)
  5. 2009.08.12 [ASP] asp로 xml 파일 저장

[ASP] Err 객체

|

앞선 포스팅에서 utf-8로 제작된 페이지 오류를 한글로 바꾸는 작업을 실패한후 그냥 ASP에 내장된 Err객체를 쓰기로 했다...


Err 객체는 실행 타임 오류에 대한 정보를 담고 있는데, 오류가 발생한 시점과 사용자에게 오류 메시지를 보내고자 하는 시점이 서로 다르기 때문에 이 객체를 이용하면 없는 오류를 만들 수도 있고 발생한 오류를 무시할 수도 있다.

즉, Err 객체는 오류가 발생했을 때 오류에 대한 정보를 그대로 가지고 있다가 알려주는 객체이다.


프로퍼티

Description - 오류를 설명하는 문자 지정

Number - 오류를 나타내는 숫자 값

Source - 오류를 생성한 객체 이름


메소드

Clear - Err객체에서 현재 셋팅을 지움

Raise - 실행 타임 오류를 발생


※ Err 객체를 쓰기위해서는 상단에 On Error Resume Next를 적어줘야 한다.


예제)

On Error Resume Next

If Err.Number > 0 Then

    response.write "<strong>에러발생</strong><br />"

    response.write "ASP에 지정된 에러번호 : "& Err.Number &"<br />"

    response.write "라인 : "& Err.line & "<br />"

    response.write "에러 원인 : "& Err.description &"<br />"

    response.write "에러를 발생시킨 객체 : "& Err.Source

End If


오류번호
5 - 프로시저 호출 또는 인수가 잘못되었습니다. 
6 - 숫자가 너무 큽니다. 
7 - 메모리가 부족합니다. 
9 - 첨자 사용이 잘못되었습니다. 
10 - 배열이 고정되었거나 일시적으로 잠금 상태입니다. 
11 - 0으로 나누었습니다. 
13 - 형식이 일치하지 않습니다. 
14 - 문자열 공간이 부족합니다. 
17 - 요청한 작업을 수행할 수 없습니다. 
28 - 스택 공간이 부족합니다. 
35 - Sub 또는 Function이 정의되지 않았습니다. 
48 - DLL 로드 중 오류가 발생하였습니다. 
51 - 내부 오류입니다. 
52 - 파일 이름 또는 번호가 잘못되었습니다. 
53 - 파일이 없습니다. 
54 - 파일 모드가 잘못되었습니다. 
55 - 파일이 이미 열려 있습니다. 
57 - 장치 입/출력 오류입니다. 
58 - 파일이 이미 존재합니다. 
61 - 디스크에 여유 공간이 없습니다. 
62 - 파일 끝을 넘는 입력(값)입니다. 
67 - 파일이 너무 많습니다. 
68 - 사용할 수 없는 장치입니다. 
70 - 사용 권한이 없습니다. 
71 - 디스크가 준비되지 않았습니다. 
74 - 다른 드라이브로 이름을 바꿀 수 없습니다. 
75 - 경로/파일 액세스 오류입니다. 
76 - 경로를 찾을 수 없습니다. 
91 - Object 변수가 설정되어 있지 않습니다. 
92 - For 루프를 초기화하지 않았습니다. 
94 - Null의 사용이 잘못되었습니다. 
322 - 필요한 임시 파일을 만들 수 없습니다. 
424 - 개체가 필요합니다. 
429 - ActiveX 구성 요소는 개체를 만들 수 없습니다. 
430 - 클래스가 자동화를 지원하지 않습니다. 
432 - 자동화 실행 중 파일 이름이나 클래스 이름을 찾을 수 없습니다. 
438 - 개체가 이 속성 또는 메서드를 지원하지 않습니다. 
440 - 자동화 오류가 발생하였습니다. 
445 - 개체가 이 동작을 지원하지 않습니다. 
446 - 개체가 명명된 인수를 지원하지 않습니다. 
447 - 개체가 현재의 로케일 설정을 지원하지 않습니다. 
448 - 명명된 인수를 찾을 수 없습니다. 
449 - 선택적인 인수가 아닙니다. 
450 - 인수의 개수나 속성 지정이 잘못되었습니다. 
451 - 컬렉션이 아닌 개체입니다. 
453 - 지정한 DLL 함수를 찾을 수 없습니다. 
455 - 코드 자원 잠금시 오류가 발생하였습니다. 
458 - 변수가 VBScript에서 지원하지 않는 자동화 형식을 사용하고 있습니다. 
462 - 원격 서버 시스템이 없거나 사용할 수 없습니다. 
481 - 그림이 잘못되었습니다. 
500 - 변수가 정의되지 않았습니다. 
501 - 지정이 잘못되었습니다. 
502 - 개체를 스크립트하는 데 잘못되었습니다. 
503 - 개체를 초기화하는 데 잘못되었습니다. 
504 - 개체를 만드는 데 잘못되었습니다. 
505 - 잘못되거나 해당되지 않는 참조입니다. 
506 - 클래스가 정의되지 않았습니다. 
507 - 예외가 발생하였습니다. 
5016 - 정규식 개체가 필요합니다. 
5017 - 정규식에 구문 오류가 있습니다. 
5018 - 예기치 않은 한정 기호입니다. 
5019 - 정규식에 ']'가 필요합니다. 
5020 - 정규식에 ')'가 필요합니다. 
5021 - 문자 집합의 범위가 틀립니다. 
32811 - 요소가 없습니다.


'프로그래밍 > asp, php' 카테고리의 다른 글

ON ERROR RESUME NEXT  (0) 2009.09.22
[ASP] read/write configuration class (xml version)  (0) 2009.08.12
[ASP] asp로 xml 파일 저장  (0) 2009.08.12
[asp] 기본 함수  (0) 2009.08.01
Request.ServerVariables  (0) 2009.07.29
And

ASP에서 엑셀파일 업로드후 데이터베이스에 입력을 할려고 하는데!

|

그런데 그만!

특정 행만 입력이 안되는 겁니다. 엉엉...

그래서 자주찾는 태오사이트에 질문을 하려고 하는데 파일첨부가 안되네요.

그래서 여기 파일 첨부를 하고 태오에 등록을 할려고 이러고 있네요.

 

day_auction.pig_xls는 어떤 사이트에서 다운받은 파일 그대로이고, test2.xls는 원본 파일을 공백을 다 제거해주고 서식을 일반으로 바꿔준 파일이다.

임시로 결과를 출력하는 코드를 작성했는데.

excelConn="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & excelFile & "; Mode=ReadWrite|Share Deny None; Extended Properties='Excel 8.0;HDR=YES;';Persist Security Info=False"

Set excelDB = Server.CreateObject("ADODB.Connection")
excelDB.Open excelConn

sql = "SELECT * FROM [Sheet1$]"
Set excelRS = excelDB.Execute(sql)

response.write "<table border=""1""><tr><td>작업장명</td><td>돈피(성별)</td><td>등급</td><td>경락두수</td><td>비율(%)</td><td>지율증량</td><td>최고가(원)</td><td>최저가(원)</td><td>평균(원)</td></tr>"
DO UNTIL excelRS.EOF
    title = Trim(excelRs(0))
    Select Case title
        Case "농협서울"
            For i = 0 To 8
                If i = 0 Then response.write "<tr>"
                If excelRs(i) = "" Then
                    response.write "<td>빈칸</td>"
                else
                    response.write "<td>"& excelRs(i) & "</td>"
                End if
                If i = 8 Then response.write "</tr>"
            Next
        End Select
    excelRs.movenext
Loop

Set excelRs = Nothing
response.write "</table>"

이렇게 하고 출력을 하면...

이렇게 나온다.

비율과 평균의 값이 안 나오는 것이다.

 

이 문제를 좀 해결해주실분 ㅜㅜ...(반말,높임말 맘대로군요;)

'커뮤니티 > 자유게시판' 카테고리의 다른 글

우리집 햄스터  (2) 2009.10.22
남자와 여자의 대화  (2) 2009.10.22
초대장 나눠드려요~ 2장  (14) 2009.10.08
전문대학에서 취업이란...  (2) 2009.10.08
KT, 아이폰 도입이 끝이 아니다  (0) 2009.10.06
And

ON ERROR RESUME NEXT

|

이걸 씀으로 모든 에러가 떴을때 에러를 출력하는게 아니고 에러정보를 출력하거나 그냥 출력을 안되게 할수 있다.

하지만 무한반복에 빠져들수 있음으로 남용은 금물.

On Error Resume Next

If Err.Number <> 0 then
Response.Write "에러 상세 설명<BR> "
Response.Write Err.Number & " - 에러 개수<BR>"
Response.Write Err.Description & " - 에러 메시지<BR>" 
Response.Write Err.Source & " - 에러 출처<BR>"
Response.Write Err.NativeError & " - DB 에러번호<BR>"
Response.Write Err.HelpFile & " - 에러 파일<BR>"
Response.Write Err.HelpContext & " - 에러 Context<BR>"
End If


'프로그래밍 > asp, php' 카테고리의 다른 글

[ASP] Err 객체  (0) 2010.05.27
[ASP] read/write configuration class (xml version)  (0) 2009.08.12
[ASP] asp로 xml 파일 저장  (0) 2009.08.12
[asp] 기본 함수  (0) 2009.08.01
Request.ServerVariables  (0) 2009.07.29
And

[ASP] read/write configuration class (xml version)

|
<%
'Option Explicit

Class configs

Private mClassName
Private mConfigRootPath
Private mItems
Private mXmlRootNodeName
Private mConfigName

Private Sub Class_Initialize()
 mClassName = "configs class"
 mXmlRootNodeName = "configs"
 mConfigRootPath = server.mappath("./")
End Sub

Public Sub Load(configname)
 Dim xdom
 Dim i
 
 mConfigName = configname
 Set mItems = Server.CreateObject("scripting.dictionary")
 Set xdom = server.CreateObject("microsoft.xmldom")
 xdom.load mconfigrootpath & "\" & configname & ".xml"
 If xdom.parseerror.errorcode <> 0 Then
  Err.raise vbObjectError, mClassName, xdom.parseerror.reason
 Else
  if xdom.documentelement.nodename = mXmlRootNodeName Then
  For i=0 To xdom.documentelement.childnodes.length-1
  mItems.add xdom.documentelement.childnodes(i).nodename, xdom.documentelement.childnodes(i).text
  Next
  Else
  Err.raise vbObjectError, mClassName, "Invalid Configuration File"
  End If
 End If
 Set xdom = nothing
End Sub

Public Sub Save()
 Dim xdom
 Dim i

 Set xdom = server.CreateObject("microsoft.xmldom")
 xdom.load mconfigrootpath & "\" & mConfigName & ".xml"
 If xdom.parseerror.errorcode <> 0 Then
  Err.raise vbObjectError, mClassName, xdom.parseerror.reason
 Else
  if xdom.documentelement.nodename = mXmlRootNodeName Then
  For i= xdom.documentelement.childnodes.length-1 To 0 Step -1
  xdom.documentelement.removechild(xdom.documentelement.childnodes(i))
  Next
  Dim keys, items, newelement
  keys = mItems.keys()
  items = mItems.items()
  For i=0 To mItems.count-1
  Set newelement = xdom.createElement(keys(i))
  newelement.text = items(i)
  xdom.documentelement.appendchild newelement
  Set newelement = Nothing
  Next
  xdom.save mconfigrootpath & "\" & mConfigName & ".xml"
  Else
  Err.raise vbObjectError, mClassName, "Invalid Configuration File"
  End If
 End If
 Set xdom = nothing
 Set mItems = Nothing
End Sub

Public Sub Add(key, value)
 mItems.Add key, value
End Sub

Public Function Item(key)
 Item = mItems.Item(key)
End Function

End Class

'example.asp
'
'Dim a
'Set a = new configs
'a.load "example"
'response.write a.item("test1")
'a.add "test4", "33>3"
'a.save
'Set a = nothing

'example.xml
'
'<configs><test1>1111</test1><test2>2222</test2><test3>3333</test3></configs>
%>


출처 : http://hanhead.tistory.com/trackback/68

'프로그래밍 > asp, php' 카테고리의 다른 글

[ASP] Err 객체  (0) 2010.05.27
ON ERROR RESUME NEXT  (0) 2009.09.22
[ASP] asp로 xml 파일 저장  (0) 2009.08.12
[asp] 기본 함수  (0) 2009.08.01
Request.ServerVariables  (0) 2009.07.29
And

[ASP] asp로 xml 파일 저장

|
html 문서 폼에서 정보를 입력받아 asp를 이용해 xml 문서로 만드는 예제

AddContac.html

<html>
   <head>
      <title>연락처 정보</title>
   </head>
   <body>
   <form
action="processAdd.asp" method="post">
      <h3>연락처 정보를 입력하세요</h3>
      이름 : <input type="text" id="firstName" name="firstName"><br>
      성 : <input type="text" id="lastName" name="lastName"><br>
      주소1 : <input type="text" id="address1" name="address1"><br>
      주소2 : <input type="text" id="address2" name="address2"><br>
      전화번호 : <input type="text" id="phone" name="phone"><br>
      이메일주소 : <input type="text" id="email" name="email"><br>
     <input type="submit" id="btnSub" name="btnSub" value="Submit"><br>
   </form>
   </body>
</html>

processAdd.asp

<%

'-----------------------------------------------------------
'"addNewContacttoXML" 함수는 두개의 파라미터를 받아들인다
'strXMLFilePath : XML 파일이 저장될 물리적 경로
'strFileName : 저장될 XML 파일의 이름
'-----------------------------------------------------------


Function addNewContacttoXML(strXMLFilePath, strFileName)

   '지역 변수 선언
   Dim objDOM
   Dim objRoot
   Dim objRecord
   Dim objField
   Dim objFieldValue
   Dim objattID
   Dim objattTabOrder
   Dim objPI
   Dim blnFileExists
   Dim x

   'XMLDOM 인스턴스 생성
   Set objDOM = server.CreateObject("Msxml2.DOMDocument.4.0")
   objDOM.preserveWhiteSpace = True

   'XMLDOM 개체의 Load 메서드 호출
   'Load 메서드는 파일이 로드됐는지 아닌지를 알려주는 불린 값 반환
   '만일 파일이 존재하여 도링했으면 true,그렇지 않으면 false 반환

   blnFileExists = objDOM.Load(strXMLFilePath & "\" & strFileName)

   '파일이 성공적으로 로딩됐는지 체크
   if blnFileExists = True Then
      '로딩된 파일의 최상위 요소를 objRoot 개체에 셋팅
      Set objRoot = objDOM.documentElement
   Else
      '최상위 요소를 만든 후 XML문서에 추가
      Set objRoot = objDOM.createElement("rolodex")
      objDOM.appendChild objRoot
   End if

   '새로운 레코드를 위한 새로운 컨테이너 요소 생성
   Set objRecord = objDOM.createElement("contact")
   objRoot.appendChild objRecord

   'Request 개체에 폼 컬렉션 반복
   For x = 1 To Request.Form.Count
      '폼요소중 btn이란 이름의 요소가 있으면 XML문서에 추가되지 않도록
      If instr(1,Request.Form.Key(x),"btn")=0 Then
         '"field" 요소 생성
         Set objField = objDOM.createElement("field")
         '"id" 속성 생성
         Set objattID = objDOM.createAttribute("id")
         '현재 폼 필드 이름과 id속성을 같도록 함
         objattID.Text = Request.Form.Key(x)
         'setAttribute 메서드는 field 요소에 id 속성을 추가시킴
         objField.setAttributeNode objattID
         '또 다른 속성 "taborder" 생성. 요소들의 순서와 관련
         Set objattTabOrder = objDOM.createAttribute("taborder")
         'taborder 속성의 값 설정
         objattTabOrder.Text = x
         'field 요소에 taborder 속성 추가
         objField.setAttributeNode objattTabOrder
         '새로운 요소 "field_value" 생성
         Set objFieldValue = objDOM.createElement("field_value")
         'field_value 요소의 값에 현재 폼 컬렉션의 필드의 값 설정
         objFieldValue.Text = Request.Form(x)
         'field 요소를 새로운 레코드 컨테이너 contact 의 자식으로 추가
         objRecord.appendChild objField
         'field_value 요소를 field 요소의 자식으로 추가
         objField.appendChild objFieldValue
      End If
   Next

   '파일을 로딩하는데 실패했다면 XML 새로운 문서를 만들고
   'XML processing instruction을 삽입해야 함

   if blnFileExists = False then
      'xml processing instruction 생성
      Set objPI = objDOM.createProcessingInstruction("xml","version='1.0'")
      'XML문서에 processing instruction 추가
      objDOM.insertBefore objPI, objDOM.childNodes(0)
   End if

   'XML문서 저장
   objDOM.save strXMLFilePath & "\" & strFileName

   '모든 객체 참조 반환
   Set objDOM = nothing
   Set objRoot = nothing
   Set objRecord = nothing
   Set objField = nothing
   Set objFieldValue = nothing
   Set objattID = nothing
   Set objattTabOrder = nothing
   Set objPI = nothing

End Function

'에러 발생시 계속 진행
On Error Resume Next

'addNewContacttoXML 함수 호출
addNewContacttoXML "XML문서를 만들 곳의 경로","xml파일 이름"

'에러 발생시 사용자에게 알려 주고, 그렇지 않으면 성공했음을 알려줌
If err.number <> 0 then
   Response.write("처리 도중 에러 발생!")
Else
%>

<SCRIPT LANGUAGE="JavaScript">
<!--
   alert("성공적으로 처리 됐습니다");
   location.href="asp파일 경로";
 //-->
</SCRIPT>

<%End if%>

[출처] ASP를 이용한 XML문서 만들기|작성자 밤맛만쥬 


'프로그래밍 > asp, php' 카테고리의 다른 글

[ASP] Err 객체  (0) 2010.05.27
ON ERROR RESUME NEXT  (0) 2009.09.22
[ASP] read/write configuration class (xml version)  (0) 2009.08.12
[asp] 기본 함수  (0) 2009.08.01
Request.ServerVariables  (0) 2009.07.29
And
prev | 1 | 2 | next