SPAW(html 편집기)와 TEXT 글쓰기 폼을 함께 사용하자!! > 그누3 팁자료실

그누3 팁자료실

SPAW(html 편집기)와 TEXT 글쓰기 폼을 함께 사용하자!! 정보

그누호환 SPAW(html 편집기)와 TEXT 글쓰기 폼을 함께 사용하자!!

첨부파일

spaw.zip (289.9K) 78회 다운로드 2004-02-18 22:21:53

본문

이번 팁 내용은 좀 깁니다!!
겁먹지 마시고 처음부터 찬찬히 읽으면서 하시면 잘 될겁니다.

SPAW(이하 편집기)를 달자고 하니 TEXT가 울고 TEXT를 달자고 하니 편집기가 아깝고,
둘다 달고 싶고 이러지도 저러지도 못하겠죠??
둘다 한번 달아 보도록 합시다.!
찬찬히 읽으면서 따라 오세요!! 안그럼 헷갈려서 모르실꺼에요.!
SPAW 설치법은 아래 설명 하겠습니다.

우선 bbs 폴더에 있는 gbform.php 파일을 복사해서 내용은 똑같은데 파일이름만 다른 파일을 만들어 봅시다.
저하고 똑같은 파일을 만드세요 gbform.php를 이름을 gbform_tag.php를 만듭니다.
gbform.php 파일도 있어야 합니다. 이걸 이름 바꾸시면 아니되와요!!
이렇게 하면 이제 1단계 처리가 되었습니다.

2단계를 합시다.
bbs 폴더에 있는 gbform.php 파일을 편집해야 합니다.
열어서 아래 구문을 찾으세요. gbform.php 파일의 맨 아래 부분에 있습니다.
그리고 진하게 표시 된 부분을 추가해서 넣습니다.


$write_tag_href = "";
if ($member[mb_level] >= $board[bo_write_level]) {
    $write_tag_href = "./?doc=bbs/gbform_tag.php&w=&bo_table=$bo_table";
}

$update_tag_href = $delete_href = "";
// 로그인중이고 자신의 글이라면 또는 관리자라면 비밀번호를 묻지 않고 바로 수정, 삭제 가능
if (($member[mb_id] && ($member[mb_id] == $write[mb_id])) || $is_admin) {
    $update_tag_href = "./?doc=bbs/gbform_tag.php&w=u&$qstr&page=$page&wr_id=$wr_id";
    $delete_href = "javascript:if (confirm('삭제하시겠습니까?')) { location='./?doc=bbs/gbdelete.php&w=d&$qstr&page=$page&wr_id=$wr_id'; }";
} else if (!$write[mb_id]) { // 회원이 쓴 글이 아니라면
    $update_tag_href = "./?doc=bbs/gbpasswd.php&w=u&$qstr&page=$page&wr_id=$wr_id";
    $delete_href = "./?doc=bbs/gbpasswd.php&w=d&$qstr&page=$page&wr_id=$wr_id";
}

header_cache();

if ($board[bo_include_head]) { @include $board[bo_include_head]; }
if ($board[bo_content_head]) { echo stripslashes($board[bo_content_head]); }

include "$board_skin/gbform.skin.php";

if ($board[bo_content_tail]) { echo stripslashes($board[bo_content_tail]); }
if ($board[bo_include_tail]) { @include $board[bo_include_tail]; }
?>


위까지 하셨나요? 이건 이제 편집기를 달려고 두 번째 준비작업이 완료 되었습니다.
이제 세 번째 작업을 해야 합니다.

세 번째 작업은 아까 만들어 놓은 gbform_tag.php를 편집합니다.
위에랑 같이 아래 진하게 된 부분을 추가하거나 수정합니다.
아래 구문은 위랑 똑같아 보이지만 약간씩 다릅니다.
include "$board_skin/gbform_tag.skin.php"; 도 바꿔야 합니다!!


$write_href = "";
if ($member[mb_level] >= $board[bo_write_level]) {
    $write_href = "./?doc=bbs/gbform.php&w=&bo_table=$bo_table";
}

$update_href = $delete_href = "";
// 로그인중이고 자신의 글이라면 또는 관리자라면 비밀번호를 묻지 않고 바로 수정, 삭제 가능
if (($member[mb_id] && ($member[mb_id] == $write[mb_id])) || $is_admin) {
    $update_href = "./?doc=bbs/gbform.php&w=u&$qstr&page=$page&wr_id=$wr_id";
    $delete_href = "javascript:if (confirm('삭제하시겠습니까?')) { location='./?doc=bbs/gbdelete.php&w=d&$qstr&page=$page&wr_id=$wr_id'; }";
} else if (!$write[mb_id]) { // 회원이 쓴 글이 아니라면
    $update_href = "./?doc=bbs/gbpasswd.php&w=u&$qstr&page=$page&wr_id=$wr_id";
    $delete_href = "./?doc=bbs/gbpasswd.php&w=d&$qstr&page=$page&wr_id=$wr_id";
}

header_cache();

if ($board[bo_include_head]) { @include $board[bo_include_head]; }
if ($board[bo_content_head]) { echo stripslashes($board[bo_content_head]); }

include "$board_skin/gbform_tag.skin.php";

if ($board[bo_content_tail]) { echo stripslashes($board[bo_content_tail]); }
if ($board[bo_include_tail]) { @include $board[bo_include_tail]; }
?>


위에까지 잘 따라 오셨나요??
이걸 편집했으면 이제 bbs 폴더에 올립니다.
이제 여기까지 하셨으면 다음으로 넘어갑시다.

스킨파일을 이제 수정해야 하는데요.
보드스킨 파일 중 gbform.skin.php파일도 똑같이 gbform_tag.php 파일 만들 듯이 파일 이름만 다르고 내용은 같은 파일을 만들어 봅시다. 파일 이름은 gbform_tag.skin.php를 만들도록 합시다.

여기까지 잘 하셨어요??모르시겠으면 다시 천천히 읽어 보시고 따라해보세요!!

gbform.skin.php을 수정하도록합시다.
아래 그림 처럼 전환 버튼을 만들어야 되는데요
butt.gif
아래 구문을 적당한 위치에 넣습니다.
저는 내용 작성 하는 바로 위에 넣었습니다. (최상단 그림 참조)


[ <b>TEXT 글쓰기</b> | <? if ($subject) echo "<a href='$update_tag_href'>HTML 글쓰기(편집기)</a>"; else echo "<a href='$write_tag_href'>HTML 글쓰기(편집기)</a>"; ?> ]


위 구문을 적당한 위치에 넣으셨나요??
그러면 gbform.skin.php 수정은 완료 되었습니다
저장하시고 나오세요.

이제 아까 백업해서 만들어 놓은 스킨 파일을 수정해야 됩니다.
gbform_tag.skin.php 입니다. 이건 편집이 위에꺼 보다 좀 많습니다.
이것 또한 아래 구문을 적당한 위치에 넣습니다.


[ <? if ($subject) echo "<a href='$update_href'>TEXT 글쓰기</a>"; else echo "<a href='$write_href'>TEXT 글쓰기"; ?></a> | <b>HTML 글쓰기(편집기)</b> ]


위에까지 다하셨지요?
이제 gbform_tag.skin.php 내용중 하나 더 해야 합니다.
아래 구문을 찾아 보세요.
편집기로 바꿔야 하기 때문에 필요합니다.


<textarea name='wr_content' required style='word-break:break-all;' rows=15 cols=90 itemname='내용' class='textarea lh'><?=$content?></textarea>


위 구문은 아래 구문으로 바꿔 줍니다.
진하게 해둔 부분은 이용중이 서버 경로에 맞춰 바꿔 주시면 됩니다.
알FTP를 기준으로 설명 해드리자면 아래 그림에 위치에 있는걸 말합니다.
kyung.gif
저걸 진한 부분에 넣으십시오. 마지막에 / 넣는걸 까먹지 맙시다!


<?
/*
<textarea name='wr_content' required style='word-break:break-all;' rows=15 cols=100 itemname='내용' class='textarea lh'><?=$content?></textarea>
*/

// SPAW 관련 설정
$spaw_root = "
/wecan3/munsuchurch/www.munsucmi.org/ukkang/spaw/";
include $spaw_root."spaw_control.class.php";
$sw = new SPAW_Wysiwyg('wr_content', $write[wr_content],
'kr' /*language*/, 'full' /*toolbar mode*/, 'classic' /*theme*/,
                       '99%' /*width*/, '300px' /*height*/);
$sw->show();
?>


그리고 하나 더 수정해야 됩니다.
아래 파란색으로 진하게 된 부분을 바로 밑에 적어 둔 빨간색 구문으로 수정합니다.
<? if ($is_html) { ?><input type=hidden name=wr_html value=1 checked onclick="html_auto_br(this)"><? } ?>


    <td><input type=text name='wr_subject' required itemname='제목' value='<?=$subject?>' class='input' size=50>
        <? if ($is_notice) { ?><input type=checkbox name=wr_notice value='-1' <?=$notice_checked?>>공지 <? } ?>
        <? if ($is_html) { ?><input type=hidden name=wr_html value=1 checked onclick="html_auto_br(this)"><? } ?>
       <? if ($is_html) { ?><input type=checkbox name=wr_html value='<?=$html_value?>' <?=$html_checked?> onclick="html_auto_br(this)">HTML <? } ?>
        <input type=checkbox name=wr_recv_email value='1' <?=$recv_email_checked?>>답변메일 
    <td>


SPAW 설치법을 알아 봅시다.

SPAW 파일을 받으세요 아래 파일 올려 놓은거 있죠??
그걸 받으세요!!그리고 아래 경로에 있는 파일을 수정합니다.
spaw/config/spaw_control.config.php
제것을 예를 들어 보여 드리는 것이니 잘 보시고 자신에 맞게 수정하세요..^^


########  수정 요
// SPAW DIR                   
$spaw_dir = 'http://www.munsucmi.org/ukkang/spaw/';
// SPAW URL
$spaw_base_url = 'http://www.munsucmi.org/ukkang/spaw/';
// 절대 경로
$spaw_root = "/wecan3/munsuchurch/www.munsucmi.org/ukkang/spaw/";
//사이트의 절대경로                
$_root = '/wecan3/munsuchurch/www.munsucmi.org/ukkang/';
$_root_url = 'http://www.munsucmi.org/ukkang/';
######## /


저는 http://www.munsucmi.org 의 서브 페이지로 있기 때문에 root_url 이 http://www.munsucmi.org/ukkang/입니다.

따로 인스톨 할필요 없습니다.
수정한 파일을 올립니다.

이렇게 되면 SPAW와 TEXT를 둘다 사용할 수 있습니다.

좀 길죠??
모르시면 천천히 다시 한번 쭈욱 읽어 보시면서 혹은 천천히 하나하나 따라하면서 해보세요!!
녹색만 나오는 모니터의 서러움이란..ㅠ.ㅠ 힘들다..

추천
0
  • 복사

댓글 전체

위에 내용을 좀 잘못 적었군요. 저도 되다 안되다 하던 것이 스크립트 태그를 따로 분리하여 마지막에 추가하니까 잘 되는군요.
다시 말하지만, 스킨 맨 아래에 위에 적은 스크립트 그대로 붙여 넣으면 제대로 작동합니다.
되긴 하는데 완벽하지 않아요.
되었다가 안되었다가 하네요..
그냥 아무래도 좋다는 분들은 길선 아빠님께서 말씀하신걸 하세요..^^
spaw에 두가지 모드가 이미 구현되어 있습니다.
다만, 디폴트로 에디터가 보이도록 설정되어 있기때문이라면,
dbform.skin.php 맨 아래에 있는 스크립트에 아래의 스크립트만 추가해 주어도 되지않을까 싶습니다만..
<script language='Javascript'>
    SPAW_html_tab_click('wr_content', 'SPAW_wr_content_tb_html_tab');
</script>
© SIRSOFT
현재 페이지 제일 처음으로