- 정보공유
[기타] [asp] 네이버 스마트 에디터 파일업로드 소스
컨퍼넌트는 ABCUpload 기반입니다.
md5.asp 소스는 첨부파일도 다운받으실 수 있습니다.
<!-- #include virtual="/md5.asp" -->
<%
Set UploadConf = Server.CreateObject("ABCUpload4.XForm") '// 파일업로드 컴포넌트를 선언
UploadConf.AbsolutePath = True
UploadConf.CodePage = 65001
Dim save_url, save_dir, callback_func, FileName, FileURL
save_url = "/data/seditor/"& Replace(Date(),"-","") &"/"
save_dir = Server.MapPath("/") & save_url
callback = UploadConf("callback")
callback_func = UploadConf("callback_func") '// 팝업창에 생성하는 iframe 이름 입니다. 이 값은 그대로 받아서 그대로 넘김니다.
' 날짜별 폴더 생성.
Set fso = CreateObject("Scripting.FileSystemObject")
On Error Resume Next
If Not fso.FolderExists(save_dir) Then '** 폴더가 있는지 체크
fso.CreateFolder(save_dir) '** 폴더가 없으면 새로 생성
If Err.Number>0 Then
Err.Raise vbObjectError + 1, "", "업로드폴더의 존재 여부와 쓰기/수정 권한이 있는지 확인 하시기 바랍니다."
Response.Write Err.Description
Response.End
End If
End If
On Error Goto 0
ERR.Clear
Set fso = Nothing
Set theField = UploadConf("Filedata")(1)
If theField.FileExists Then
FileSize = theField.Length
FileMimeType = theField.MIMEType
FileName = theField.FileName
If Not Instr(1 , FileMimeType ,"image") > 0 Then
With Response
.write "<script language='javascript'>" & vbCrLf
.write " alert('"& FileMimeType &".');" & vbCrLf
.write " history.go(-1);" & vbCrLf
.write "</script>" & vbCrLf
.End
End With
End If
temp = InStrRev(FileName, ".") - 1
If temp > 0 Then
strName = md5(Mid(FileName, 1, temp)) '** 확장자를 제외한 파일명
strExt = Mid(FileName, InstrRev(FileName, ".") + 1) '** 확장자
If Trim(LCase(strExt))="asp" Then strExt = strExt & ".txt" '** 확장명이 asp인 파일을 txt파일로 바꿈
If Trim(LCase(strExt))="aspx" Then strExt = strExt & ".txt" '** 확장명이 aspx인 파일을 txt파일로 바꿈
If Trim(LCase(strExt))="exe" Then strExt = strExt & ".txt" '** 확장명이
If Trim(LCase(strExt))="php" Then strExt = strExt & ".txt" '** 확장명이
If Trim(LCase(strExt))="cgi" Then strExt = strExt & ".txt" '** 확장명이
If Trim(LCase(strExt))="dll" Then strExt = strExt & ".txt" '** 확장명이
Else
'** 확장명이 없을경우
strName = FileName
strExt = "-"
End If
If strName="" Then strName = "-"
'** 파일이름 재결합 - 참조에 의해 전달된 인수값을 변경
FileName = strName &"."& strExt
Set fso = Server.CreateObject("Scripting.FileSystemObject")
bExist = True
strFileWholePath = save_dir & "\" & FileName '** 저장할 파일의 물리적 경로 구성
countFileName = 0 '** 파일이 존재할 경우 뒤에 붙일 숫자 세팅
Do While bExist
If fso.FileExists(strFileWholePath) Then '** 같은 이름의 파일이 존재할 경우
countFileName = countFileName + 1 '** 파일명 뒤에 숫자를 붙임
FileName = strName & "(" & countFileName & ")." & strExt '** 파일명 변경 - 참조에 의해 전달된 인수값을 변경
strFileWholePath = save_dir & "\" & FileName
Else
bExist = False
End If
Loop
Set fso = Nothing
theField.Save save_dir &"\"& FileName
FileURL = save_url & FileName '// 이미지 URL
Response.redirect callback &"?callback_func="& callback_func &"&bNewLine=true&sFileName="& FileName &"&sFileURL="& FileURL
Else
Response.redirect callback &"?callback_func="& callback_func &"&errstr=error"
End If
Set UploadConf = Nothing
%>
첨부파일
- md5.zip (3.3K) 14회 다운로드 | DATE : 2016-10-19 18:24:58