티스토리 뷰


조건1. form 전송된 파일 이름은 attach 이다.
조건2. attach 를 사이트갤럭시 컴포넌트를 이용해서 받았다.(다른컴포넌트인경우 속성만 바꾸어주시오.)
조건3. 현재파일 하위에 data란 폴더에 저장되며 data폴더는 읽고 쓰기가 가능하다.

1.등록폼 파일처리

if attach <> "" then
Set FSO = CreateObject("Scripting.FileSystemObject")

strDirectory = server.MapPath("./data")
'서버내 파일이 저장되는 위치

attach_file = UploadForm("attach").FilePath
'저장될 파일의 이름을 얻는다.

FileSize = UploadForm("attach").Size
'저장될 파일의 Size

FileName = Mid(attach_file, InstrRev(attach_file, "\") + 1)
'파일명을 얻는다.
  
strName = Mid(FileName, 1, Instr(FileName, ".") -1)
'확장자를 제외한 파일명을 얻는다.

strExt = Mid(FileName, Instr(FileName, ".") + 1)
'확장자를 얻는다.

bExist = True
'우선 같은 파일이 존재한다고 가정

strFileName = strDirectory &"\"& strName & "." & strExt
'지정할 파일의 완전한 이름만듬

'파일을 실제로 저장한다.
UploadForm("attach").SaveAs (strFileName)

end if

SQL문에 FileName 변수로 저장한다.


2. 수정폼 파일처리

'만약 수정폼에서 파일을 첨부하면 기존파일을 삭제하고 새로 올린다.
if attach <> "" then

'파일이 저장되는 경로를 정의한다.
strDirectory = server.MapPath("./data")

'기존에 있는 파일을 찾아서 삭제한다.
SQL = "select * from 테이블명 where seq='"&seq&"'"
set rs1 = DbCon.Execute(SQL)
strFileDirectory = strDirectory&"\"&rs1("attach")
Set fso = CreateObject("Scripting.FileSystemObject")
If (fso.FileExists(strFileDirectory)) Then
    ' 파일이 있으면, 삭제
fso.DeleteFile(strFileDirectory)
End If


attach_file = UploadForm("attach").FilePath
'저장될 파일의 패스를 얻는다.

FileSize = UploadForm("attach").Size
'저장될 파일의 Size

FileName = Mid(attach_file, InstrRev(attach_file, "\") + 1)
'파일명을 얻는다.
  
strName = Mid(FileName, 1, Instr(FileName, ".") -1)
'확장자를 제외한 파일명을 얻는다.

strExt = Mid(FileName, Instr(FileName, ".") + 1)
'확장자를 얻는다.

bExist = True
'우선 같은 파일이 존재한다고 가정

strFileName = strDirectory &"\"& strName & "." & strExt
'지정할 파일의 완전한 이름만듬

'파일을 실제로 저장한다.
UploadForm("attach").SaveAs (strFileName)
end if

SQL문에 FileName 변수로 저장한다.


3. 파일 삭제처리

'쿼리문을 날려서 DB에서 파일이름을 가져온다.
SQL = "select * from 테이블명 where seq='"&request("seq")&"'"
set rs1 = DbCon.Execute(SQL)
strFileDirectory = server.MapPath("./data")&"\"&rs1("attach")
Set fso = CreateObject("Scripting.FileSystemObject")
If (fso.FileExists(strFileDirectory)) Then
    ' 파일이 있을때만 삭제하고 없을경우 에러문을 출력하지 않고 넘어간다.
fso.DeleteFile(strFileDirectory)
End If

delete 문을 날려서 DB에 있는 내용을 삭제한다.


출처 : http://cafe.naver.com/gosok
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2025/04   »
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
글 보관함