[CKEditor] ASP에서 사용하기 > 온라인강의

본문 바로가기
 
 
 
오늘 1,432
어제 2,008
최대 2,526
전체 3,631,053

최근 방문자

1263
2029
2149
2193
2008
1432
19 20 21 22 23 24
비즈니스의 시작 비즈명함 ~ 가격, 품질, 배송 3가지 만족을 드리는 비즈명함 / 즉석명함 / 급행서비스 / 서울 전지역 수도권일부 3시간배송

select * from g5_menu where me_use = '1' and me_link like '%lecture%'
온라인강좌 홈 > 온라인강좌 > 온라인강좌

Editor | [CKEditor] ASP에서 사용하기 (up. 2016-08-31)

페이지 정보

작성일2012-02-07 22:10 조회14,416회 댓글0건

본문

1. 먼저 ckeditor(위지윅 에디터)를 다운 받습니다.
    ckeditor - http://ckeditor.com/download

2. ckeditor 를 사용하는 페이지에
<script type="text/javascript" src="/ckeditor/ckeditor.js"></script>
를 추가하고 에디터를 사용할 부분에

<textarea name="mycontents"><% 'response.write mycontents %></textarea>
<script type="text/javascript">
CKEDITOR.replace('mycontents',
    {
        filebrowserUploadUrl: '../ckeditor/upload.asp?type=Files',
        filebrowserImageUploadUrl: '../ckeditor/upload.asp?type=Images',
        //filebrowserFlashUploadUrl: '../ckeditor/upload.asp?type=Flash',
        //width : '620px',  // 입력창의 넓이, 넓이는 config.js 에서 % 로 제어
        height : '200px',  // 입력창의 높이
        startupFocus : false  // 자동 focus 사용할때는  true
    }
);
</script>
위와 같이 넣어주면 ckeditor 를 사용하고자 하는 페이지에 불러올 수 있습니다.
개발문서 참조 하시면 형태는 다양하게 변경할 수 있습니다.

filebrowserUploadUrl / filebrowserImageUploadUrl / filebrowserFlashUploadUrl 에서 설정한 페이지에서 파일 업로드를 구현해 주시면 됩니다.
위의 프로퍼티를 입력하지 않은 경우 업로드 하는 부분이 나타나지 않습니다.
이미지나 플래쉬 서버로 업로드 하기 위해서 반드시 입력하세요

ckeditor_20120208.jpg

여기 까지 설정하는 부분은 끝입니다.

3. 업로드 파일 구현
기본적으로 업로드 파일로 type 값 넘어오고요
CKEditorFuncNum, CKEditor, langCode, upload .....  필요한 값은 이정도면 됩니다.

upload.asp 소스입니다.  DextUpload 컴포넌트을 사용합니다.
/Upload/ckeditor/Flash
/Upload/ckeditor/Files
/Upload/ckeditor/Images  의 폴더를 생성합니다.


<% @LANGUAGE='VBSCRIPT' CODEPAGE='65001' %>
<%
session.codepage = 65001
Response.CharSet = "UTF-8"

Dim funcNum, CKEditor, langCode, fileUrl, fileDir, message, CKEditor_upload_folder

' 파일 중복을 제거 하기 위해 고정 사이트 만큼 특정 문자를 채워 주는 함수
Public Function LeftFillString ( strValue, fillChar, makeLength )
    Dim strRet, strLen, diff, i
    
    strRet  = ""
    strLen  = Len(strValue)
    diff    = CInt(makeLength) - strLen
    
    if diff > 0 then
        for i=1 to diff
            strRet = strRet & CStr(fillChar)
        next
    end if
    
    LeftFillString = strRet & CStr(strValue)
End Function

'유니크한 파일명 만들기
Public Function MakeUniqueFileName( strPrename )
    Dim strFilename, dtNow
    dtNow = now()
    Randomize()
    'strFilename = strPrename & Year(dtNow)
    strFilename = Year(dtNow)
    strFilename = strFilename & LeftFillString( Month(dtNow),   "0", 2 )
    strFilename = strFilename & LeftFillString( Day(dtNow),     "0", 2 )
    strFilename = strFilename & "_"
    strFilename = strFilename & LeftFillString( Hour(dtNow),    "0", 2 )
    strFilename = strFilename & LeftFillString( Minute(dtNow),  "0", 2 )
    strFilename = strFilename & LeftFillString( Second(dtNow),  "0", 2 )
    strFilename = strFilename & "_"  
    strFilename = strFilename & LeftFillString ( Int(Rnd * 1000000), "0", 7 )
    MakeUniqueFileName = strFilename
End Function
  
' 파일 확장자 추출
Function GetFileExt( strFilename )
    Dim strExt, nPos
    nPos = InStrRev( strFilename, ".", -1, 1 ) '// Text Compare
    if nPos > 0 then
        strExt = Mid( strFilename, nPos+1 )
    end if
GetFileExt = strExt
End Function
 
'변수들은 위에서 말한 개발자 가이드 문서에서 뽑았습니다.
'Required: anonymous function number as explained above.
funcNum = Request("CKEditorFuncNum")
'Optional: instance name (might be used to load specific configuration file or anything else)
CKEditor = Request("CKEditor")
'Optional: might be used to provide localized messages
langCode = Request("langCode")
'Check the $_FILES array and save the file. Assign the correct path to some variable ($url).
'fileUrl = ""
'Usually you will assign here something only if file could not be uploaded.
'message = "성공적으로 파일 업로드"

' DEXT Upload를 사용하고 있습니다.
Set Upload = Server.CreateObject("DEXT.FileUpload")
CKEditor_upload_folder = "/upload/ckeditor"
  
Upload.DefaultPath = Server.MapPath (CKEditor_upload_folder)
Dim folderPath
folderPath = Server.MapPath(CKEditor_upload_folder&"/")
upload_filename = Upload("upload").Filename
if IsNull(Upload("upload")) or Upload("upload").FileLen <= 0 then
    upload_filename = ""
    img_filesize = 0
    message = "Upload file does not exist.\n업로드 파일이 존재하지 않습니다."
else
    upload_filename = MakeUniqueFileName("upload") & "." & GetFileExt(upload_filename)
    img_filesize = Upload("upload").FileLen
    if img_filesize > 0 then
        strExt = Mid(upload_filename, Instr(upload_filename, ".") + 1)
        if strExt="jpg" or strExt="JPG" or strExt="JPEG" or strExt="gif" or strExt="GIF" or strExt="png" or strExt="PNG" or strExt="bmp" or strExt="BMP" then
            Upload("upload").SaveAs folderPath & "\Images\" & upload_filename
            fileDir =  "/Images/"
        elseif strExt="swf" then
            Upload("upload").SaveAs folderPath & "\Flash\" & upload_filename
            fileDir =  "/Flash/"
        else
            Upload("upload").SaveAs folderPath & "\Files\" & upload_filename
            fileDir =  "/Files/"
        end if
        message = "I have successfully uploaded the files.\n정상적으로 파일을 업로드했습니다."
    else
        message = "The uploaded file size is zero.\n업로드 파일 사이즈가 0입니다."
    end if
end if

'http:// 경로를 포함하고 싶을때
'fileUrl = "http://"& CKEditor_HTTP_HOST & CKEditor_upload_folder & fileDir & upload_filename
'http:// 경로를 제외하고 싶을때
fileUrl =  CKEditor_upload_folder & fileDir & upload_filename
%>
<script type="text/javascript">
    // 가장 중요한 부분인것 같군요
    // ckeditor의 순번과 유효한 파일 경로만 넘기면 자동으로 이미지나 플래쉬 속성 변경 탭으로 이동합니다.
    window.parent.CKEDITOR.tools.callFunction(<%=funcNum %>, '<%=fileUrl %>', '<%=message %>');
    history.go(-1);
</script>


관련자료
http://flexred5.blogspot.com/2010/11/ckeditor-asp.html
http://www.happyjung.com/bbs/board.php?bo_table=lecture&wr_id=1110
  • 페이스북으로 보내기
  • 트위터로 보내기
  • 구글플러스로 보내기

댓글목록

등록된 댓글이 없습니다.


목록

Total 2,126건 1 페이지
온라인강의 목록
번호 제목
2126
2125
2124
2123
2122
2121
2120
2119
2118
2117
2116
2115
2114
2113
2112
2111
2110
2109
MySQL Not Acceptable (up.2017-11-02 17:42) Hit.297
2108
2107
2106
2105
2104
2103
2102
게시물 검색
 
 
상호: 해피정닷컴 대표:정창용 사업자등록번호:119-05-36414 (08394) 서울시 구로구 디지털로 242 한화비즈메트로1차 1502호
전화: 070-7600-3500 팩스:02-865-3528 개인정보관리:정창용 mail@happyjung.com 에스크로확인
개인정보취급방침
COPYRIGHT 2001~2017 해피정닷컴. All rights reserved. 통신판매신고:2014-서울구로-0074
 
모바일 버전으로 보기