2008. 11. 5. 18:53
윈도우 스케줄러를 사용해서 자동백업을 구축해 보겠습니다.

cron에서 shell 등록하듯이 batch 파일로 간단하게 되더군요... 
7-zip에서 커맨드 모드를 지원하기 때문에 .bat 파일 하나만 만들어 등록하면 됩니다.

7-zip 홈페이지 : http://www.7-zip.org

아래와  같이 www_backup.bat 라는 batch 파일을 하나 만듭니다.

www_backup.bat
cd c:\program files\7-zip
7z.exe a -tzip d:\backup\a.zip c:\www\website_a
7z.exe a -tzip d:\backup\b.zip c:\www\website_b


c:\program files\7-zip 은 7-zip의 설치 경로고,

7z.exe은 커맨드라인 버전,
a는 아카이브를 만드는 커맨드,
-tzip은 압축 포맷은 zip으로 하겠다는 거죠...

그리고 압축 파일의 위치, 압축 소스 차례대로 적어주면 됩니다.

이제 스케쥴러를 실행한 다음, www_backup.bat를 선택하시고 실행될 시간과 사용자를 지정해주면 됩니다.

Start -> Programs -> Accessories -> System Tools -> Scheduled Task -> Add Scheduled Task



Posted by ToTb
2008. 10. 22. 21:41
첨부파일 다운받으면  6개의 파일 나옵니다.

writexml.asp - DB 읽어서 xml 파일로 내보내기
readxml.asp - xml 파일 읽어서 보여주기
savexml.asp - 다른 사이트에 있는 xml 파일을 읽어서 로컬에 파일로 저장하기
postxml.asp - HTTP Connection 방식을 이용해서 Post 전송하기
postxml_proc.asp - HTTP Connection 방식으로 받은 Post 값 확인하는 페이지

aaa.xml - xml 파일

참고로 msxml4.msi 설치 필요합니다.


출처: 데브피아
http://www.devpia.com/MAEUL/Contents/Detail.aspx?BoardID=57&MAEULNO=22&no=1883&page=1




Posted by ToTb
2008. 10. 22. 21:23

다른 서버의 DB연결 정보를 모르는 상태에서도 DB를 쿼리해 올수 있는 방법입니다.
물론 해당 DB가 접근 가능한 서버에 DB쿼리를 담당하는 소스가 있어야 하구요.

원리는 아래와 같습니다.
DB를 접근할 수 없는 서버측 (서버A) 에서 xmlhttp로 DB가 접근가능한 서버(서버B) 에 있는 Dbconn.asp를 쿼리문을 주면서 호출하면 Dbconn.asp는 해당 DB에 있는 데이터를 쿼리한다음 XML로 변환하여 Response로 부립니다.

서버 A에서 xmlHttp로 연결하였기때문에 response에서 생성된 데이터를 String형태로 가져 올수 있습니다.
가져운 String를 ADODB.Stream객체로 변환후 다시 Recordset로 변환...^^

DTest.asp  -해당 DB가 접근하지 않는 서버에서 실행

<%
"" Response.Charset="euc-kr"

Dim QryStr
"" QryStr = " select idx, Iname, Iorder"
"" QryStr = QryStr & "   from Tcategory "
"''" QryStr = QryStr & "  where mco = '000' "
"" QryStr = QryStr & "  order by art_order "

Dim Http, sXML
"" Set Http = server.CreateObject("Microsoft.XMLHTTP")
""" Http.Open "GET", "http://localhost/Dbconn.asp?QryStr"=" & QryStr, False
Http.Send

sXML = Replace(Http.responseText, vbNewLine, vbNullString)

Set Http = Nothing

   Dim oStream
""    Set oStream = Server.CreateObject("ADODB.Stream")
   oStream.Open
'    oStream.WriteText sXML   'Give the XML string to the ADO Stream

'    oStream.Position = 0    'Set the stream position to the start

   Dim oRecordset
""    Set oRecordset = Server.CreateObject("ADODB.RecordSet")
  
'    oRecordset.Open oStream    'Open a recordset from the stream

   oStream.Close
   Set oStream = Nothing

response.Write oRecordSet.recordcount

Set oRecordset = Nothing

%>



Dbconn.asp - 해당 DB 가 접근 가능한 서버측에 심어두어야 함.

<%
Option Explicit

""Response.ContentType = "text/xml"

Dim ObjADORS, QryStr,DB_DSN
Const adPersistXML = 1
""QryStr = Request("QryStr")
""DB_DSN = "Provider=sqloleDB;Data Source=MyDBSvrIP;Initial Catalog=MyDBName;User ID=myUser;Password=myPwd;"

""Set ObjADORS = Server.CreateObject("ADODB.Recordset")

ObjADORS.Open QryStr, DB_DSN

ObjADORS.Save Response, adPersistXML

ObjADORS.Close
Set ObjADORS = Nothing

%>



Posted by ToTb
2008. 10. 22. 20:32

<%
' ===========================
'  Function to GetHTMLBin
' ===========================

Function GetHTMLBin(URLaddress)


   Dim Http
   Set Http = CreateObject("Microsoft.XMLHTTP")
   Http.Open "GET", URLaddress, False
   Http.Send
   GetHTMLBin = Http.responseBody
   Set Http = Nothing

End Function


' ===========================
'  Function to BinToText
' ===========================

Function BinToText(varBinData, intDataSizeInBytes)    ' as String

    Const adFldLong = &H00000080
    Const adVarChar = 200


    Set objRS = CreateObject("ADODB.Recordset")
    objRS.Fields.Append "txt", adVarChar, intDataSizeInBytes, adFldLong
    objRS.Open
    objRS.AddNew
    objRS.Fields("txt").AppendChunk varBinData
    BinToText = objRS("txt").Value
    objRS.Close
    Set objRS = Nothing

End Function

GetURL = "http://totb.kr"

HTMLBin = GetHTMLBin(GetURL)
html = BinToText(HTMLBin,32000) 
%>

<%=html%>


Posted by ToTb
2008. 10. 22. 19:48

이미지가 없을경우 미리보기는 지원하지 않습니다. [Not Provider Preview Because Image Not Found]
이미지를 최소 1개 이상 선택하여 주십시오. [You must select image at least]
이미지 파일이 아닙니다. [Not Image File]
작성자를 입력하여 주십시오. [Writer Field is missed]
작성자email을 입력하여 주십시오. [Email Filed is missed]
제목을 입력하여 주십시오.[Title Field is missed]
내용을 입력하여 주십시오.[Contents Field is missed]
비밀번호를 입력하여 주십시오. [Password Field is missed]
받는이 이름을 적어주세요. [Reciver Field is missed]
받는이 메일주소를 적어주세요. [Reciver Email Field is missed]
글의 제목을 적어주세요. [Article Title Field is missed]
받을 메세지를  적어주세요. [Message Field is missed]
보내는이 이름을 적어주세요. [Sender Name Field is missed]
보내는이 메일주소를 적어주세요. [Sender Email Field is missed]
보내는이 메일이 바르지 않습니다. [Sender email file is not correct]
받는이 메일이 바르지 않습니다. [Receiver email file is not correct]
제한 길이를 초과하였습니다. [Excess limited Length]

 
Posted by ToTb
2008. 10. 22. 19:45
window.clipboardData.getData("Text");
bResult = window.clipboardData.setData("Text",oSource.innerText);

Method Description
clearData Removes one or more data formats from
the clipboard through dataTransfer or clipboardData object.
getData Retrieves the data in the specified format from
the clipboard through the dataTransfer or clipboardData objects.
setData Assigns data in a specified format to
the dataTransfer or clipboardData object.

bSuccess = object.setData(sDataFormat, sData)
sDataFormat:
Required. String that specifies the format of the data to be transferred, using one of the following values: Text Transfers data formatted as text.
URL Transfers data formatted as a URL.

sData:
Required. String that specifies the data supplied by the source object. This information can be descriptive text, a source path to an image, or a URL for an anchor. When you pass "URL" as the sDataFormat parameter, you must use the sData parameter to provide the location of the object being transferred.

어떤 자료가 있을때 클립보드로 복사해서 엑셀같은데 붙여넣기하면 좋다.
엑셀에 넣을때 필드 구분은 \t 레코드 구분은 \n 이다 


Posted by ToTb
2008. 9. 29. 11:37
HTML 2.0 표준 문서 형식
<!DOCTYPE html PUBLIC "=//IETF//DTD HTML 2.0//EN">

HTML 3.2 표준 문서 형식
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">

HTML 4.01 표준 문서 형식
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">

XHTML 1.0 표준 문서 형식
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

XHTML 1.1 표준 문서 형식
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">



Posted by ToTb
2008. 9. 15. 20:13


사용자 삽입 이미지

http://www.gotapi.com/

많은 도움이 되더라구요 ^^



'Website 세상 > Web Program' 카테고리의 다른 글

웹페이지에서 클립보드 다루기  (0) 2008.10.22
DTD(Document Type Definition) 문서 구조  (0) 2008.09.29
Syntax Summary for the SQL  (0) 2008.09.11
DNS 백업/복원  (0) 2008.09.11
사업자등록번호체계  (0) 2008.09.09
Posted by ToTb
2008. 9. 11. 02:28
※ ANSI 기준:DB2,INFROMIX,INGRES,ORACLE,SQL/DS,SYBASE 등 각 DBMS별로 약간의 서식 차이가 있을 수 있습니다..

ALTER DATABASE database_name
:데이터베이스를 수정(한 번도 사용해본 적 없습니다.)

ALTER TABLE table_name
    (various options)
:테이블 구조를 수정
e.g. alert table authors add birth_date datetime null

BEGIN TRANsaction [transaction_name]
:사용자정의 트랜젝션의 시작.
COMMIT TRANsaction
:사용자정의 트랜젝션의 끝

CREATE DATABASE database_name
:데이터베이스 생성

CREATE [UNIQUE] [CLUSTERED |
    NONCLUSTERED] INDEX index_name
    ON table_name
    (column_name [, column_name]...)
:인덱스 생성

CREATE TABLE table_name
    (column_name datatype [NOT NULL | NULL]
    [, column_name datatype [NOT NULL | NULL]]...)
:테이블 생성

CREATE VIEW [owner.]view_name
    [(column_name [, column_name]...)]
    AS select_statement
    [WITH CHECK OPTION]
:뷰테이블 생성

DELETE FROM
    {table_name | view_name}
    [WHERE search_conditions]
:데이터 삭제

DROP DATABASE database_name
:데이터베이스 삭제

DROP INDEX
    table_name.index_name [, table_name.index_name]...
:인덱스 삭제

DROP TABLE table_name
:테이블 삭제

DROP VIEW [owner.]view_name [, [owner.]view_name]...
:뷰테이블 삭제

DUMP DATABASE database_name
    TO device_name
:데이터베이스 자료 비우기

DUMP
TRANsaction database_name
    TO device_name
:트렌젝션 자료 비우기

GRANT {ALL | privilege_list}
    ON {table_name [(column_list)} |
        view_name [(column_list)]
    TO {PUBLIC | name_list}

GRANT {ALL | command_list}
    TO {PUBLIC | name_list}

INSERT [INTO]
    {table_name | view_name}
        [(column_list)]
    {VALUES (constant_expression
        [, constant_expression]...) | select_statement}
:데이터 추가

LOAD DATABASE database_name
    FROM device_name
:데이터베이스 읽어오기

LOAD TRANsaction database_name
    FROM device_name
:트렌젝션 읽어오기

REVOKE {ALL | privilege_list}
    ON {table_name [(column_list)] |
        view_name [(column_list)]}
    FROM {PUBLIC | name_list}

REVOKE {ALL | command_list}
    FROM {PUBLIC | name_list}

ROLLBACK TRANsaction
    [transaction_name | savepoint_name]

SAVE TRANsaction [savepoint_name]

SELECT [DISTINCT] select_list
    [INTO table_name]
    [FROM
    {table_name | view_name},
        [{table_name | view_name}]...
    [WHERE search_conditions]
    [GROUP BY [ALL] column_name
            [, column_name]...
        [HAVING search_donditions]
    [ORDER BY
        [{table_name. | view_name.}]
            column_name |
        select_list_number | expression} [ASC | DESC]
        [, {[table_name. | view_name.}]
            column_name |
        select_list_number | expression} [ASC | DESC]]...]
:데이터 가져오기

UPDATE {table_name | view_name}
SET [{table_name. | view_name.}]
column_name1 = {expression1 | NULL | (select_statement)}
[, column_name2 = {expression2 | NULL | (select_statement)}]...
    [FROM {table_name | view_name}
        [, {table_name | view_name}]...
    [WHERE search_conditions]
:데이터 수정

UPDATE STATISTICS
    table_name [index_name]


Posted by ToTb
2008. 9. 11. 02:22
DNS백업

1. DNS서비스를 서비스 관리자에서 중지 시킨다.
2. \\%systemroot%\system32\dns 에 가서 폴더내에 있는 모든 내용을 복사
3. 레지스트리 편집기에가서

\HERY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\DNSServer\Zones
에가서 위의 레지스트리 메뉴에가서 레지스트리 내보내기를 하여 이값을 다른곳에 복사한다.


DNS 복원
1. DNS 서비스를 중지시킨다
2. \\%systemroot%\system32\dns 에 가서 폴더내에 있는 모든 내용을 백업해두었던 내용으로 대체한다.
3. 레지스트리 편집기에가서\HERY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\DNSServer\Zones
에가서 위의 레지스트리 메뉴에가서 이전에 만든 값을 레지스트리 가져오기를 한다
4. DNS 서비스를 시작한다


Posted by ToTb