글쓰기 에러 > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

글쓰기 에러 정보

글쓰기 에러

본문

아래 현호님이 올리신거 보고 루트에 cheditor추가하고 ...lib/에도 추가 했더니 괜찮아 진듯 한데...ㅠㅠ 글쓰기는 되는데 다쓴후 글쓰기 버튼을 누르면 첨부와 같이 에러가 뜨면서 넘어가질 않네요.
부탁 합니다.

댓글 전체

게시판 스킨에서 write.skin.php 파일에,
스크립트 부분을 그누보드 기본 스킨과 비교해서 고쳐야합니다.
그누보드 버전업 되면서 오래된 스킨은 위처럼 스크립트 오류가 발생합니다.
고맙습니다.
한번해보고 안됨 다시한번 부탁 드리겠습니다..혹시 몰라 가지고 있는 소스 올려 봅니다.
그냥 날로 먹는다 생각 마시고....전 완전 초보라서 어젯밤 꼴딱 새웠는데도 헤메고 있어 고수님의 검토 바라는 맘입니다.....ㅠㅠ
아래는 소스입니다.

<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
include_once("$g4[path]/lib/cheditor.lib.php");
include_once("$board_skin_path/config.php");

if ($w == 'r') $content = '';
//************************************************************
//
// 스킨명 : 카멜레온 간이몰 스킨
// 버  젼 : 2006-03-16일짜 버젼
// 제작자 : ⓒⓒⓒ (Soonho Choi) http://cm-builder.com
// MSN    : top-*** 개인정보보호를 위한 이메일주소 노출방지 ***
//
// 저작권 : 이 주석 부분을 훼손하지않은 상태에서 수정및 사용이 자유롭습니다.
//
//************************************************************
?>

<script src="<?=$g4[editor_path]?>/cheditor.js"></script>
<script language="javascript" src="<?=$board_skin_path?>/money.js"></script>

<script language="javascript">
// 글자수 제한
var char_min = parseInt(<?=$write_min?>); // 최소
var char_max = parseInt(<?=$write_max?>); // 최대
</script>

<form name="fwrite" method="post" action="javascript:fwrite_check(document.fwrite);" enctype="multipart/form-data" style="margin:0px;">
<input type=hidden name=null><!-- 삭제하지 마십시오. -->
<input type=hidden name=w        value="<?=$w?>">
<input type=hidden name=bo_table value="<?=$bo_table?>">
<input type=hidden name=wr_id    value="<?=$wr_id?>">
<input type=hidden name=sca      value="<?=$sca?>">
<input type=hidden name=sfl      value="<?=$sfl?>">
<input type=hidden name=stx      value="<?=$stx?>">
<input type=hidden name=spt      value="<?=$spt?>">
<input type=hidden name=sst      value="<?=$sst?>">
<input type=hidden name=sod      value="<?=$sod?>">
<input type=hidden name=page    value="<?=$page?>">
<?=cheditor1('wr_content', $content);?>
<?=cheditor1('wr_transport', $write[wr_transport]);?>
<?=cheditor1('wr_9', $write[wr_9]);?>
<table width="<?=$width?>" align=center cellpadding=0 cellspacing=0 class=board_bg><tr><td>

<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr><td colspan=2 height=2 class='t_line'></td></tr>
<tr><td colspan=2 height=35 class='t_bg'>&nbsp;<span class='t_text'><strong><?=$title_msg?></strong></span></td></tr>
<tr><td colspan=2 height=2 class='t_line2'></td></tr>

<? if ($is_name) { ?>
<tr>
    <td style='padding-left:20px; height:30px;'><span class='w_text'>· 이름</span></td>
    <td><input class='ed input' maxlength=20 size=15 name=wr_name itemname="이름" required value="<?=$name?>"></td></tr>
<tr><td colspan=2 height=1  class='w_line'></td></tr>
<? } ?>

<? if ($is_password) { ?>
<tr>
    <td style='padding-left:20px; height:30px;'><span class='w_text'>· 패스워드</span></td>
    <td><input class='ed input' type=password maxlength=20 size=15 name=wr_password itemname="패스워드" <?=$password_required?>></td></tr>
<tr><td colspan=2 height=1  class='w_line'></td></tr>
<? } ?>

<? if ($is_email) { ?>
<tr>
    <td style='padding-left:20px; height:30px;'><span class='w_text'>· 이메일</span></td>
    <td><input class='ed input' maxlength=100 size=50 name=wr_email email itemname="이메일" value="<?=$email?>"></td></tr>
<tr><td colspan=2 height=1 class='w_line'></td></tr>
<? } ?>

<? if ($is_homepage) { ?>
<tr>
    <td style='padding-left:20px; height:30px;'><span class='w_text'>· 홈페이지</span></td>
    <td><input class='ed input' size=50 name=wr_homepage itemname="홈페이지" value="<?=$homepage?>"></td></tr>
<tr><td colspan=2 height=1 class='w_line'></td></tr>
<? } ?>

<tr>
    <td width=120 style='padding-left:20px; height:30px;'><span class='w_text'>· 옵션</span></td>
    <td><? if ($is_notice) { ?><input type=checkbox name=notice value="1" <?=$notice_checked?>>공지&nbsp;<? } ?>
        <? if ($is_html) { ?><input onclick="html_auto_br(this);" type=checkbox value="<?=$html_value?>" name="html" <?=$html_checked?>><span class=w_title>html</span>&nbsp;<? } ?>
        <? if ($is_secret) { ?><input type=checkbox value="secret" name="secret" <?=$secret_checked?>>비밀글&nbsp;<? } ?>
        <? if ($is_mail) { ?><input type=checkbox value="mail" name="mail" <?=$recv_email_checked?>>답변메일받기&nbsp;<? } ?></td></tr>
<tr><td colspan=2 height=1  class='w_line'></td></tr>

<? if ($is_category) { ?>
<tr>
    <td style='padding-left:20px; height:30px;'><span class='w_text'>· 분류</span></td>
    <td><select name=ca_name required itemname="분류" class=select><option value="">선택하세요<?=$category_option?></select></td></tr>
<tr><td colspan=2 height=1 class='w_line'></td></tr>
<? } ?>

<tr>
    <td style='padding-left:20px; height:30px;'><span class='w_text'>· 제품명</span></td>
    <td><input class='ed input' style="width:100%;IME-MODE: active;" name=wr_subject itemname="제목" required value="<?=$subject?>"></td></tr>
<tr><td colspan=2 height=1 class='w_line'></td></tr>

<tr><td style='padding-left:20px; height:30px;'><span class='w_text'>· 옵션</span></td>
    <td><input type=checkbox name=wr_type1 value='1' <?=($write[wr_type1])?"checked":"";?> >신상품
        <input type=checkbox name=wr_type2 value='1' <?=($write[wr_type2])?"checked":"";?>> 히트
        <input type=checkbox name=wr_type3 value='1' <?=($write[wr_type3])?"checked":"";?>> 추천
        <input type=checkbox name=wr_type4 value='1' <?=($write[wr_type4])?"checked":"";?>> 포인트
        <input type=checkbox name=wr_type5 value='1' <?=($write[wr_type5])?"checked":"";?>> 한정
        <input type=checkbox name=wr_type6 value='1' <?=($write[wr_type6])?"checked":"";?>> 품절

        <a href='javascript:allchk()'>모두 체크</a>
        <script language="JavaScript">
            function allchk(){
                var f = document.fwrite;
                f.wr_type1.checked=true;
                f.wr_type2.checked=true;
                f.wr_type3.checked=true;
                f.wr_type4.checked=true;
                f.wr_type5.checked=true;
                f.wr_type6.checked=true;

            }
        </script>
    </td>
</tr>
<tr><td colspan=2 height=1 class='w_line'></td></tr>
<tr><td style='padding-left:20px; height:30px;'><span class='w_text'>· 판매가격</span></td>
    <td><input type=text name=wr_price class='input' style="width:110;" dir='rtl' style='IME-MODE: inactive;' onkeyup='this.value=numchk(this.value);' value='<?=$write[wr_price]?>'>원
    </td>
</tr>
<tr><td colspan=2 height=1 class='w_line'></td></tr>
<tr><td style='padding-left:20px; height:30px;'><span class='w_text'>· 부가옵션가격</span></td>
    <td><input type=text name=wr_opt1_name class='input' style='IME-MODE: active'  value='<?=($w=='u')?$write[wr_opt1_name]:"";?>'> :
        <input type=text name=wr_opt1_price class='input'  style="width:60;" dir='rtl' style='IME-MODE: inactive;' onkeyup='this.value=numchk(this.value);' value='<?=$write[wr_opt1_price]?>'>원
        <input type=text name=wr_opt2_name class='input' style='IME-MODE: active'  value='<?=($w=='u')?$write[wr_opt2_name]:"";?>'> :
        <input type=text name=wr_opt2_price class='input'  style="width:60;" dir='rtl' style='IME-MODE: inactive;' onkeyup='this.value=numchk(this.value);' value='<?=$write[wr_opt2_price]?>'>원<br>
        <input type=text name=wr_opt3_name class='input' style='IME-MODE: active'  value='<?=$write[wr_opt3_name]?>'> :
        <input type=text name=wr_opt3_price class='input'  style="width:60;" dir='rtl' style='IME-MODE: inactive;' onkeyup='this.value=numchk(this.value);' value='<?=$write[wr_opt3_price]?>'>원
        <input type=text name=wr_opt4_name class='input' style='IME-MODE: active'  value='<?=$write[wr_opt4_name]?>'> :
        <input type=text name=wr_opt4_price class='input'  style="width:60;" dir='rtl' style='IME-MODE: inactive;' onkeyup='this.value=numchk(this.value);' value='<?=$write[wr_opt4_price]?>'>원
    </td>
</tr>

<tr><td colspan=2 height=1 class='w_line'></td></tr>
<tr>
    <td style='padding-left:20px;'><span class='w_text'>· 상품코드</span></td>
    <td style='padding:5 0 5 0;'>
        <INPUT class='ed input' style="width:110;IME-MODE: active;" name=wr_10 itemname="상품코드"  value="<?=$write[wr_10]?>">
    </td>
</tr>

<tr><td colspan=2 height=1 class='w_line'></td></tr>
<tr>
    <td style='padding-left:20px;'><span class='w_text'>· 포인트적립</span></td>
    <td style='padding:5 0 5 0;'>
        <input type=text name=wr_2 class='input' style="width:110;" dir='rtl' style='IME-MODE: inactive;' onkeyup='this.value=numchk(this.value);' value='<?=$write[wr_2]?>'>
    </td>
</tr>

<tr><td colspan=2 height=1 class='w_line'></td></tr>
<tr>
    <td style='padding-left:20px;'><span class='w_text'>· 옵션/기타</span></td>
    <td style='padding:5 0 5 0;'>
        <INPUT class='ed input' style="width:90%;IME-MODE: active;" name=wr_4 itemname="옵션"  value="<?=$write[wr_4]?>">
    </td>
</tr>

<tr><td colspan=2 height=1 class='w_line'></td></tr>
<tr>
    <td style='padding-left:20px;'><span class='w_text'>· 배송비</span></td>
    <td style='padding:5 0 5 0;'>
        <INPUT class='ed input' style="width:110;IME-MODE: active;" name=wr_5 itemname="배송비"  value="<?=$write[wr_5]?>">원
    </td>
</tr>

<tr><td colspan=2 height=1 class='w_line'></td></tr>
<? if($w=='u') { ?>
<script>
    var f = document.fwrite;   
    f.wr_price.value=number_format(f.wr_price.value);
    f.wr_opt1_price.value=number_format(f.wr_opt1_price.value);
    f.wr_opt2_price.value=number_format(f.wr_opt2_price.value);
    f.wr_opt3_price.value=number_format(f.wr_opt3_price.value);
    f.wr_opt4_price.value=number_format(f.wr_opt4_price.value);
</script>
<? } ?>
<tr>
    <td style='padding-left:20px;'><span class='w_text'>· 제품설명</span></td>
    <td style='padding:5 0 5 0;'>
        <?=cheditor2('fwrite', 'wr_content', '100%', '200');?>
    </td>
</tr>
<tr><td colspan=2 height=1 class='w_line'></td></tr>
<tr>
    <td style='padding-left:20px;'><span class='w_text'>· 배송설명</span></td>
    <td style='padding:5 0 5 0;'>
        <?=cheditor2('fwrite', 'wr_transport', '100%', '200');?>
    </td>
</tr>


<tr><td colspan=2 height=1 class='w_line'></td></tr>
<tr>
    <td style='padding-left:20px;'><span class='w_text'>· 교환/반품</span></td>
    <td style='padding:5 0 5 0;'>
        <?=cheditor2('fwrite', 'wr_9', '100%', '200');?>
    </td>
</tr>


<tr><td colspan=2 height=1 class='w_line'></td></tr>

<? if ($is_link) { ?>
<? for ($i=1; $i<=$g4[link_count]; $i++) { ?>
<tr>
    <td style='padding-left:20px; height:30px;'><span class='w_text'>· 링크 #<?=$i?></span></td>
    <td><input type='text' class='ed input' size=50 name='wr_link<?=$i?>' itemname='링크 #<?=$i?>' value='<?=$write["wr_link{$i}"]?>'></td>
</tr>
<tr><td colspan=2 height=1 class='w_line'></td></tr>
<? } ?>
<? } ?>

<? if ($is_file) { ?>
<tr>
    <td style='padding-left:20px; height:30px;'><table cellpadding=0 cellspacing=0><tr><td style=" padding-top: 10px;"><span class='w_text'>· 파일</span><span onclick="add_file();" style='cursor:pointer; font-family:tahoma; font-size:12pt;'>+</span> <span onclick="del_file();" style='cursor:pointer; font-family:tahoma; font-size:12pt;'>-</span></td></tr></table></td>
    <td style='padding:5 0 5 0;'><table id="variableFiles" cellpadding=0 cellspacing=0></table><?// print_r2($file); ?>
        <script language="JavaScript">
        var flen = 0;
        function add_file(delete_code)
        {
            var upload_count = <?=(int)$board[bo_upload_count]?>;
            if (upload_count && flen >= upload_count)
            {
                alert("이 게시판은 "+upload_count+"개 까지만 파일 업로드가 가능합니다.");
                return;
            }

            var objTbl;
            var objRow;
            var objCell;
            if (document.getElementById)
                objTbl = document.getElementById("variableFiles");
            else
                objTbl = document.all["variableFiles"];

            objRow = objTbl.insertRow(objTbl.rows.length);
            objCell = objRow.insertCell(0);

            objCell.innerHTML = "<input type='file' class='ed input' size=32 name='bf_file[]' title='파일 용량 <?=$upload_max_filesize?> 이하만 업로드 가능'>";
            if (delete_code)
                objCell.innerHTML += delete_code;
            else
            {
                <? if ($is_file_content) { ?>
                objCell.innerHTML += "<br><input type='text' class='ed input' size=50 name='bf_content[]' title='업로드 이미지 파일에 해당 되는 내용을 입력하세요.'>";
                <? } ?>
                ;
            }

            flen++;
        }

        <?=$file_script; //수정시에 필요한 스크립트?>

        function del_file()
        {
            // file_length 이하로는 필드가 삭제되지 않아야 합니다.
            var file_length = <?=(int)$file_length?>;
            var objTbl = document.getElementById("variableFiles");
            if (objTbl.rows.length - 1 > file_length)
            {
                objTbl.deleteRow(objTbl.rows.length - 1);
                flen--;
            }
        }
        </script></td>
</tr>
<tr><td colspan=2 height=1 class='w_line'></td></tr>
<? } ?>

<? if ($is_trackback) { ?>
<tr>
    <td style='padding-left:20px; height:30px;'><span class=w_text>· 트랙백주소</a></td>
    <td><input class='ed input' size=50 name=wr_trackback itemname="트랙백" value="<?=$trackback?>">
        <? if ($w=="u") { ?><input type=checkbox name="re_trackback" value="1">핑 보냄<? } ?></td>
</tr>
<tr><td colspan=2 height=1 class='w_line'></td></tr>
<? } ?>

<? if ($is_norobot) { ?>
<tr>
    <td style='padding-left:20px; height:30px;'>· <?=$norobot_str?></td>
    <td><input class='ed input' type=input size=10 name=wr_key itemname="자동등록방지" required>&nbsp;&nbsp;* 왼쪽의 글자중 <font color="red">빨간글자만</font> 순서대로 입력하세요.</td>
</tr>
<tr><td colspan=2 height=1 class='w_line'></td></tr>
<? } ?>

<tr><td colspan=2 class='w_line2'></td></tr>
</table>

<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
    <td width="100%" height="30" background="<?=$board_skin_path?>/img/write_down_bg.gif"></td>
</tr>
<tr>
    <td width="100%" align="center" valign="top">
        <input type=image id="btn_submit" src="<?=$board_skin_path?>/img/btn_write.gif" border=0 accesskey='s'>&nbsp;
        <a href="./board.php?bo_table=<?=$bo_table?>"><img id="btn_list" src="<?=$board_skin_path?>/img/btn_list.gif" border=0></a></td>
</tr>
</table>

</td></tr></table>
</form>


<script language="javascript">
<?

// 관리자라면 분류 선택에 '공지' 옵션을 추가함
if ($is_admin)
{
    echo "
    if (typeof(document.fwrite.ca_name) != 'undefined')
    {
        document.fwrite.ca_name.options.length += 1;
        document.fwrite.ca_name.options[document.fwrite.ca_name.options.length-1].value = '공지';
        document.fwrite.ca_name.options[document.fwrite.ca_name.options.length-1].text = '공지';
    }";
}
?>

with (document.fwrite) {
    if (typeof(wr_name) != "undefined")
        wr_name.focus();
    else if (typeof(wr_subject) != "undefined")
        wr_subject.focus();
    else if (typeof(wr_content) != "undefined")
        wr_content.focus();

    if (typeof(ca_name) != "undefined")
        if (w.value == "u")
            ca_name.value = "<?=$write[ca_name]?>";
}

function html_auto_br(obj)
{
    if (obj.checked) {
        result = confirm("자동 줄바꿈을 하시겠습니까?\n\n자동 줄바꿈은 게시물 내용중 줄바뀐 곳을<br>태그로 변환하는 기능입니다.");
        if (result)
            obj.value = "html2";
        else
            obj.value = "html1";
    }
    else
        obj.value = "";
}

function fwrite_check(f)
{
    var s = "";
    if (s = word_filter_check(f.wr_subject.value)) {
        alert("제목에 금지단어('"+s+"')가 포함되어있습니다");
        return;
    }

    if (s = word_filter_check(f.wr_content.value)) {
        alert("내용에 금지단어('"+s+"')가 포함되어있습니다");
        return;
    }

    if (char_min > 0 || char_max > 0)
    {
        var cnt = parseInt(document.getElementById('char_count').innerHTML);
        if (char_min > 0 && char_min > cnt)
        {
            alert("내용은 "+char_min+"글자 이상 쓰셔야 합니다.");
            return;
        } else if (char_max > 0 && char_max < cnt)
        {
            alert("내용은 "+char_max+"글자 이하로 쓰셔야 합니다.");
            return;
        }
    }

    if (typeof(f.wr_key) != "undefined") {
        if (hex_md5(f.wr_key.value) != md5_norobot_key) {
            alert("자동등록방지용 빨간글자가 순서대로 입력되지 않았습니다.");
            f.wr_key.focus();
            return;
        }
    }

    document.getElementById('btn_submit').disabled = true;
    document.getElementById('btn_list').disabled = true;

    <?=cheditor3('wr_content');?>
    <?=cheditor3('wr_transport');?>
    <?=cheditor3('wr_9');?>

    f.action = "./write_update.php";
    f.submit();
}
</script>
회원제라면 아래코드 빼세요.

    var s = "";
    if (s = word_filter_check(f.wr_subject.value)) {
        alert("제목에 금지단어('"+s+"')가 포함되어있습니다");
        return;
    }

    if (s = word_filter_check(f.wr_content.value)) {
        alert("내용에 금지단어('"+s+"')가 포함되어있습니다");
        return;
    }

    if (char_min > 0 || char_max > 0)
    {
        var cnt = parseInt(document.getElementById('char_count').innerHTML);
        if (char_min > 0 && char_min > cnt)
        {
            alert("내용은 "+char_min+"글자 이상 쓰셔야 합니다.");
            return;
        } else if (char_max > 0 && char_max < cnt)
        {
            alert("내용은 "+char_max+"글자 이하로 쓰셔야 합니다.");
            return;
        }
    }

    if (typeof(f.wr_key) != "undefined") {
        if (hex_md5(f.wr_key.value) != md5_norobot_key) {
            alert("자동등록방지용 빨간글자가 순서대로 입력되지 않았습니다.");
            f.wr_key.focus();
            return;
        }
    }
전체 66,558 |RSS
그누4 질문답변 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT