기존의 코멘트 글을 수정하면 새글로 등록되는 현상, 왜 ??????????????????????? > 그누4 질문답변

그누4 질문답변

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

기존의 코멘트 글을 수정하면 새글로 등록되는 현상, 왜 ??????????????????????? 정보

기존의 코멘트 글을 수정하면 새글로 등록되는 현상, 왜 ???????????????????????

본문

기존의 코멘트 글을 수정하면 새글로 등록되는 현상
혹시 짐작 가시는 원인이 있을까요?

참고로 추가필드 사용하고 있습니다.
감사 합니다.





<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
?>

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

<? if ($cwin==1) { ?><table width=100% cellpadding=0 cellspacing=0 border=0 align=center><tr><td><?}?>

<!-- 코멘트 리스트 -->
<div id="commentContents">
<?
for ($i=0; $i<count($list); $i++) {
    $comment_id = $list[$i][wr_id];

	if($i==0) {
		echo "
		<br>
		</span><span style='font-size:16px; line-height:20px; color:#888888; font-weight:bold;'>▒▒ 업무일지 리스트
		<span id=Conform style='font-size:9px; line-height:9px; color:#888888;'>Work Log list</span> 
		<div style='background-color:#888888; width:100%; padding:1px; height:2px;'><!-- 코멘트 리스트 라인--></div>";
	}

?>
<a name="c_<?=$comment_id?>"></a>
<table width=100% cellpadding=0 cellspacing=0 border=0>
<tr>
    <td><? for ($k=0; $k<strlen($list[$i][wr_comment_reply]); $k++) echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"; ?></td>
    <td width='100%'>

        <table border=0 cellpadding=0 cellspacing=0 width=100%>

        <tr style="padding:10px;" onMouseOver=this.style.backgroundColor='#f2f7aa' onMouseOut=this.style.backgroundColor=''>
            <td valign=top>

					<table width=100% border=0 cellpadding=0 cellspacing=0><tr>
					<td height=1 width=100 ><strong><?=$list[$i][name]?></strong></td>
					<td height=1 width=100 ><?=$list[$i][wr_1]?></td>
					<td height=1 width=100 ><?if($list[$i][wr_2]) echo "<img src='$board_skin_path/img/face/{$list[$i][wr_2]}.png' class='png24'>";?></td>

					  <?if ($list[$i][wr_9]) {?>
					   <td width=100 align=right><b>진행율</b> </td>
					  <td>
					  <div style="width:100%; background-color:#999999;">
							<span style="width:<?=$list[$i][wr_9]?>%; background-color:#cccc00; color:#FFFFFF; text-align:right; font-size:8px;">
							 <?=$list[$i][wr_9]?>%
							 </span>
					  </div>
					  </td>
					  <?}else{?>
					  <td>&nbsp;</td>
					  <?}?>

					  <td width=1><input type='hidden' id='is_score_<?=$comment_id?>' value='<?=$list[$i][wr_9]?>'></td>
					  <td width=200 align='right' >
						<span style="color:#888888; font-size:11px;"><?=$list[$i][datetime]?></span>&nbsp;&nbsp;
						<? if ($is_ip_view) { echo "&nbsp;<span style=\"color:#B2B2B2; font-size:11px;\">{$list[$i][ip]}</span>"; } ?>
						<? if ($list[$i][is_reply]) { echo "<a href=\"javascript:comment_box('{$comment_id}', 'c');\"><img src='$board_skin_path/img/co_btn_reply.gif' border=0 align=absmiddle alt='답변'></a> "; } ?>
						<? if ($list[$i][is_edit]) { echo "<a href=\"javascript:comment_box('{$comment_id}', 'cu');\"><img src='$board_skin_path/img/co_btn_modify.gif' border=0 align=absmiddle alt='수정'></a> "; } ?>
						<? if ($list[$i][is_del])  { echo "<a href=\"javascript:comment_delete('{$list[$i][del_link]}');\"><img src='$board_skin_path/img/co_btn_delete.gif' border=0 align=absmiddle alt='삭제'></a> "; } ?>
						&nbsp;
				     </td>

					</tr></table>


                <!-- 코멘트 출력 -->
                <div style='line-height:20px; padding:7px; word-break:break-all; overflow:hidden; clear:both;'>
                <?
                if (strstr($list[$i][wr_option], "secret")) echo "<span style='color:#ff6600;'>*</span> ";
                $str = $list[$i][content];
                if (strstr($list[$i][wr_option], "secret"))
                    $str = "<span class='small' style='color:#ff6600;'>$str</span>";

                $str = preg_replace("/\[\<a\s.*href\=\"(http|https|ftp|mms)\:\/\/([^[:space:]]+)\.(mp3|wma|wmv|asf|asx|mpg|mpeg)\".*\<\/a\>\]/i", "<script>doc_write(obj_movie('$1://$2.$3'));</script>", $str);
                $str = preg_replace("/\[\<a\s.*href\=\"(http|https|ftp)\:\/\/([^[:space:]]+)\.(swf)\".*\<\/a\>\]/i", "<script>doc_write(flash_movie('$1://$2.$3'));</script>", $str);
                $str = preg_replace("/\[\<a\s*href\=\"(http|https|ftp)\:\/\/([^[:space:]]+)\.(gif|png|jpg|jpeg|bmp)\"\s*[^\>]*\>[^\s]*\<\/a\>\]/i", "<img src='$1://$2.$3' id='target_resize_image[]' onclick='image_window(this);'>", $str);
                echo $str;
                ?>
                </div>
                <? if ($list[$i][trackback]) { echo "<p>".$list[$i][trackback]."</p>"; } ?>
                <span id='edit_<?=$comment_id?>' style='display:none;'></span><!-- 수정 -->
                <span id='reply_<?=$comment_id?>' style='display:none;'></span><!-- 답변 -->
                </div>
                <input type=hidden id='secret_comment_<?=$comment_id?>' value="<?=strstr($list[$i][wr_option],"secret")?>">
                <textarea id='save_comment_<?=$comment_id?>' style='display:none;'><?=get_text($list[$i][content1], 0)?></textarea>

<textarea id='save_comment_<?=$comment_id?>_wr_1' style='display:none;'><?=get_text($list[$i][wr_1], 0)?></textarea> 
<textarea id='save_comment_<?=$comment_id?>_wr_2' style='display:none;'><?=get_text($list[$i][wr_2], 0)?></textarea> 
				
				</td>
            </td>
        </tr>
        <tr>
            <td height=5 colspan=3></td>
        </tr>
        </table>

    </td>
</tr>
</table>
<div style='background-color:#888888; width:100%; height:1px;'><!-- 코멘트 리스트 끝--></div>
<? } ?>
</div>
<!-- 코멘트 리스트 끝-->




<? if ($is_comment_write) { ?>
<!-- 코멘트 입력 -->
<div id=comment_write style="display:none; padding:20px; background-color:#f2f7aa;">

<form name="fviewcomment" method="post" action="./write_comment_update.php" onsubmit="return fviewcomment_submit(this);" autocomplete="off" style="margin:0px;">
<input type=hidden name=w           id=w value='c'>
<input type=hidden name=bo_table    value='<?=$bo_table?>'>
<input type=hidden id=wr_id  name=wr_id       value='<?=$wr_id?>'>
<input type=hidden name=comment_id  id='comment_id' value=''>
<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=page        value='<?=$page?>'>
<input type=hidden name=cwin        value='<?=$cwin?>'>
<input type=hidden name=is_good     value=''>

<div style="width:100%; text-align:left;">
	<span id=Conform style="font-size:35px; font-family:Tahoma; letter-spacing:1px; line-height:30px; color:#99CC00; font-weight:bold;">Work Log</span>
	<span style="font-size:16px; font-family:Tahoma; line-height:30px; color:#99CC00; font-weight:bold;">업무일지 공유</span>
</div>

<div style="width:100%; text-align:left; font-size:10px;  color:#FFFFFF; width:100%; background-color:#99CC00; padding:5px">	
	
	깃발<input type=hidden id='wr_1' name='wr_1' value="<?=$list[$i][wr_1]?>">
	<span id=iconFlag style="width:100; cursor:hand" onClick="disP('Flag')">아이콘선택</span>

	기분<input type=hidden  id='wr_2' name='wr_2' value="<?=$list[$i][wr_2]?>">
	<span id=iconFace style="width:100; cursor:hand; " onClick="disP('face')">아이콘선택</span>

	<!-- 비밀글<input type=checkbox id="wr_secret" name="wr_secret" value="secret"> &nbsp; -->

	진행율
	<? for($i=1; $i<=10;  $i++){ ?>
	 <input type="radio" name=wr_9 value='<?=$i?>0' style="border:0" ><?=$i?>0%
	<?}?>


</div>

<div id='Flag' style="width:100%; display:none; cursor:hand" >
	<? 
	$is_Flag = "긴박, 긴장, 신속, 대충, 까탈, 토론, ......................";
	$FlagArr = explode(",", $is_Flag);
    for ($i=0; $i<count($FlagArr); $i++) {
    $FlagArr[$i] = trim($FlagArr[$i]);
	echo "<span  value='$FlagArr[$i]' style='cursor:hand' onClick=\"disP('Flag'); intFlag(this.value)\"> $FlagArr[$i] </span>";
	}?>
</div>

<div id='face' style="width:100%; display:none;">
	<? for($i=1; $i<=13;  $i++){ 
	echo "<img src='$board_skin_path/img/face/$i.png' class='png24' value='$i' style='cursor:hand' onClick=\"disP('face'); intFace(this.value)\">";
	}?>
</div>

<script language='JavaScript'>

function intFlag(no){
 document.getElementById('iconFlag').innerHTML = no  ;
 document.getElementById('wr_1').value= no;
}

function intFace(no){
 document.getElementById('iconFace').innerHTML = "<img src='<?=$board_skin_path?>/img/face/"+no+".png' class='png24' >"  ;
 document.getElementById('wr_2').value= no;
}

function disP(id) {
	$("#"+id).slideToggle(100);
}
</script>

<div style="width:100%;">
<table width='100%' border=0 cellpadding=0 cellspacing=0 >
<tr>
	<td>
	<textarea id="wr_content" name="wr_content"  itemname="코멘트" required style='width:100%; height:80; overflow:hidden; border:1px solid #DBDBDB; background-color:#FFFFFF;' onKeyup="var m=79; var s=this.scrollHeight;if(s>=m)this.style.pixelHeight=s+20"> </textarea>
	</td>

	<td width=73 align=center valign="bottom">
	<input type="image" src="<?=$board_skin_path?>/img/co_btn_comment.gif" border=0 accesskey='s' style='width:73; height:80; border:0;'>
	</td>
</tr>
</table>
</div>

</form>

</div>

<script language='JavaScript'>
var save_before = '';
var save_html = document.getElementById('comment_write').innerHTML;

function good_and_write()
{
    var f = document.fviewcomment;
    if (fviewcomment_submit(f)) {
        f.is_good.value = 1;
        f.submit();
    } else {
        f.is_good.value = 0;
    }
}

function fviewcomment_submit(f)
{
    var pattern = /(^\s*)|(\s*$)/g; // \s 공백 문자

    f.is_good.value = 0;

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

    // 양쪽 공백 없애기
    var pattern = /(^\s*)|(\s*$)/g; // \s 공백 문자
    document.getElementById('wr_content').value = document.getElementById('wr_content').value.replace(pattern, "");
    if (char_min > 0 || char_max > 0)
    {
        check_byte('wr_content', 'char_count');
        var cnt = parseInt(document.getElementById('char_count').innerHTML);
        if (char_min > 0 && char_min > cnt)
        {
            alert("코멘트는 "+char_min+"글자 이상 쓰셔야 합니다.");
            return false;
        } else if (char_max > 0 && char_max < cnt)
        {
            alert("코멘트는 "+char_max+"글자 이하로 쓰셔야 합니다.");
            return false;
        }
    }
    else if (!document.getElementById('wr_content').value)
    {
        alert("코멘트를 입력하여 주십시오.");
        return false;
    }

    if (typeof(f.wr_name) != 'undefined')
    {
        f.wr_name.value = f.wr_name.value.replace(pattern, "");
        if (f.wr_name.value == '')
        {
            alert('이름이 입력되지 않았습니다.');
            f.wr_name.focus();
            return false;
        }
    }

    if (typeof(f.wr_password) != 'undefined')
    {
        f.wr_password.value = f.wr_password.value.replace(pattern, "");
        if (f.wr_password.value == '')
        {
            alert('패스워드가 입력되지 않았습니다.');
            f.wr_password.focus();
            return false;
        }
    }

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

    return true;
}

function comment_box(comment_id, work){
    var el_id;
    // 코멘트 아이디가 넘어오면 답변, 수정
    if (comment_id)
    {
        if (work == 'c')
            el_id = 'reply_' + comment_id;
        else
            el_id = 'edit_' + comment_id;
    }
    else
        el_id = 'comment_write';

    if (save_before != el_id)
    {
        if (save_before)
        {
            document.getElementById(save_before).style.display = 'none';
            document.getElementById(save_before).innerHTML = '';
        }

        document.getElementById(el_id).style.display = '';
        document.getElementById(el_id).innerHTML = save_html;
        // 코멘트 수정


        if (work == 'cu'){

            document.getElementById('wr_content').value = document.getElementById('save_comment_' + comment_id).value;
            if (typeof char_count != 'undefined')
                check_byte('wr_content', 'char_count');

            if (document.getElementById('secret_comment_'+comment_id).value)
                document.getElementById('wr_secret').checked = true;
            else {
                document.getElementById('wr_secret').checked = false;

				//포커스 이동
				comentTop = get_top_pos(document.getElementById('wr_content'));
				document.getElementById('wr_content').style.border= "2px solid #444444" ;
				window.scrollTo(0,comentTop-200);
			}

			document.getElementById('wr_1').value = document.getElementById('save_comment_' + comment_id+'_wr_1').value;

			document.getElementById('wr_2').value = document.getElementById('save_comment_' + comment_id+'_wr_2').value;

			for(i=0;i<document.formname.wr_9.length;i++){ 
			if(document.getElementById('wr_9_comment_' + comment_id).value == document.formname.wr_9[i].value) 
			document.formname.wr_9[i].checked = true; 
			}
        }



        document.getElementById('comment_id').value = comment_id;
        document.getElementById('w').value = work;
		//document.getElementById('wr_content').focus();

        save_before = el_id;
    }
}

function comment_delete(url)
{
    if (confirm("이 코멘트를 삭제하시겠습니까?")) location.href = url;
}

comment_box('', 'c'); // 코멘트 입력폼이 보이도록 처리하기위해서 추가 (
</script>
<? } ?>

<? if($cwin==1) { ?></td><tr></table><p align=center><a href="javascript:window.close();"><img src="<?=$board_skin_path?>/img/btn_close.gif" border="0"></a><br><br><?}?>

댓글 전체

새글로 등록되는 이유는 w 값이 cu 가 넘어가야 수정이 되는데 그렇지 못한 까닭같습니다
form 태그 바로 아래의
<input type=hidden name=w          id=w value='c'><---이걸
<input xxtype=hidden name=w          id=w value='c'> 이렇게 수정해놓고 어떤 값이 들어가는지 확인해보세요
전체 66,554 |RSS
그누4 질문답변 내용 검색

회원로그인

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