ABCUpload 이용해서 파일 업로드 및 다운로드 > 기술자료 | 해피정닷컴

ABCUpload 이용해서 파일 업로드 및 다운로드 > 기술자료

본문 바로가기

사이트 내 전체검색

ABCUpload 이용해서 파일 업로드 및 다운로드 > 기술자료

ClassicASP ABCUpload 이용해서 파일 업로드 및 다운로드

페이지 정보


본문

<%
'파일업로드 기본설정
response.expires = -10000
Server.ScriptTimeOut = 300
Set theForm = Server.CreateObject("ABCUpload4.XForm")
'theForm.CodePage = 65001  ' utf-8일때 사용
theForm.Overwrite = False  ' 덮어쓰기 허용여부  True:허용 / False:안함
theForm.MaxUploadSize = 8000000 '8M 업로드 가능
Set FSO = Server.CreateObject("Scripition.FileSystemObject")
theForm.AbsolutePath = True
 
dim fileName, fileSize
 
Function GetUniqueName(strFileName, DirectoryPath)
 
  dim strName, strExt, bExist, strFileWholePath, countFileName
 
  '확장자가 없는 경우를 처리
  if InstrRev(strFileName, ".") = 0 then
    response.write "<script language='javascript'>"
    response.write "alert(!""적절한 파일이 아닙니다.\n\n확장자가 있는지 확인해보세요"");"
    response.write "history.back();"
    response.write "</script>"
    response.end()
  end if
 
  bExist = True;
  strFileWholePath = DirectoryPath & "\" & strName & "." & strExt
  countFileName = 0
 
  do while bExist
    if (fso.FileExists(strFileWholePath)) then
      countFileName = countFileName + 1
      strFileName = strName & "(" & countFileName & ")." & strExt
    else
      bExist = False
    end if
  loop
 
  GetUniqueName = strFileWholePath
end function
 
sub Exec_fileUp(newFile,deleteFile,deleteFileSize,DirectoryPath,num)
  set theField = newFile(num+1)
  if theField.FileExists then  '만일 파일업을 했으면...
    strFileName = theField.SafeFileName '파일명
    strFileSize = theField.Length  '파일 사이즈
    '파일명을 정한다.
    strExt = mid(strFileName, InstrRev(strFileName, ".") + 1)
    strName = replace(Date(),"-","") & right(session.sessionID,4)
    strFileName = strName & "." & strExt
    if theField.Length > 8000000 then
      response.write "<script language=javascript>"
      response.write "alert(!""8M 이상의 파일은 업로드할 수 없습니다."");"
      response.write "history.back();"
      response.write "</script>"
      response.end()
    else
      if Len(deleteFile) > 0 then
        delfile = DirectoryPath & "\" & deleteFile
        if (fso.FileExists(delfile)) then
          fso.DeleteFile(delfile)  '파일을 지운다.
        end if
      end if
      strFileWholePath = GetUniqueName(strFileName, DirectoryPath)  '적합한 파일인지 체크한다.
      theField.Save strFileWholePath  '파일을 저장한다.
    end if
    fileUpload = strFileName
    fileSize = strFileSize
  else
    fileUplod = deleteFile
    fileSize = deleteFileSize
  end if
end sub
 
 
'파일 업로드, 업로드 폼이 추가되면 아래 문장만 추가한다. 물론 파일명은 수정해야 한다.
CALL Exec_fileUp(theForm.item("fileUpload"),"","",DirectoryPath,0)
%>
 
 
위 CALL 문장은 파일을 업로드 하는데 사용을 하면 되고
수정을 할 경우에는 아래 문장을 사용하면 된다
사용할 경우 삭제할 파일명과 사이즈를 먼저 구한 후에 실행을 해야 한다.
 
<%
'파일 업로드 및 삭제
CALL Exec_fileUp(theForm.item("fileUpload"),DelfileUpLoad,DelfileSize, DirectofyPath,0)
%>
 
 
 
파일을 다운로드 받을 경우, Stream을 이용해서 다운을 받는다.
<%
FileName = request("FIlename")   '파일이름
 
response.ContentType = "application/unknown"  'ContentType 을 선언
response.AddHeader "Content-Disposition","attachment;filename=" & FileName '헤더값이 첨부파일을 선언
Set objStream = Server.CreateObject("ADODB.Stream")
  objStream.Open
  ojbStream.Type = 1
  objStream.LoadFormFile Server.MapPath("\admin\upload") & \" & FileName '절대경로
  download = objStream.Read
  response.BinaryWrite download '이게 보통 response.Redirect 로 연결시켜주는 부분을 대신하여 사용된 것
Set objStream = nothing
%>


자료출처
http://blog.daum.net/thecoolman/3797336​ 

댓글목록

등록된 댓글이 없습니다.


Total 198건 3 페이지
  • RSS
기술자료 목록
158
ClassicASP   18142  2013-04-26 09:13  
157
ClassicASP   21921  2013-04-07 02:12  
156
ClassicASP   15620  2013-03-26 22:55 ~ 2020-05-05 13:10  
155
ClassicASP   22271  2013-03-07 22:16 ~ 2015-12-02 00:00  
154
ClassicASP   17240  2013-02-13 21:34  
153
ClassicASP   16434  2013-02-05 11:38 ~ 2014-04-28 00:00  
152
ClassicASP   23110  2013-02-04 17:56  
151
ClassicASP   22290  2013-02-02 14:28  
150
ClassicASP   19431  2013-02-01 20:56  
149
ClassicASP   17315  2013-01-31 02:14  
148
ClassicASP   14891  2012-11-16 21:44 ~ 2012-11-17 00:00  
147
ClassicASP   13197  2012-11-16 21:20  
146
ClassicASP   20266  2012-11-14 20:00  
열람
ClassicASP   21624  2012-11-14 19:52 ~ 2016-01-26 00:00  
144
ClassicASP   16517  2012-10-23 00:30 ~ 2014-08-13 00:00  
143
ClassicASP   21179  2012-09-07 19:53  
142
ClassicASP   17979  2012-09-07 19:38  
141
ClassicASP   23669  2012-08-23 19:16 ~ 2013-12-20 00:00  
140
ClassicASP   13946  2012-06-23 23:01  
139
ClassicASP   18692  2012-06-13 13:37  

검색

해피정닷컴 정보

회사소개 회사연혁 협력사 오시는길 서비스 이용약관 개인정보 처리방침

회사명: 해피정닷컴   대표: 정창용   전화: 070-7600-3500   팩스: 042-670-8272
주소: (34368) 대전시 대덕구 대화로 160 대전산업용재유통단지 1동 222호
개인정보보호책임자: 정창용   사업자번호: 119-05-36414
통신판매업신고: 제2024-대전대덕-0405호 [사업자등록확인]  
Copyright 2001~2024 해피정닷컴. All Rights Reserved.