댓글 이용한 여분필드 입력 내용이 댓글 수정 모드에서도 그대로 있게 하려면?
<input type="text" name="wr_11" value="<?php echo $list[$i]['wr_11']; ?>" id="wr_11" class="form-control input-sm" size="10" maxLength="20">
위 코드를 이용해 숫자를 입력 받고 있습니다.
입력은 잘 되는데, 댓글 수정 버튼을 누려면 입력한 게 사라져 버리네요.
댓글 수정 버튼을 입력해도 그대로 입력창에 보이게 하려면 어떻게 해야 하는지?
답변 5개 / 댓글 13개
view_comment.skin.php
55번째 줄 밑에
<textarea id="save_comment_<?php echo $comment_id ?>" style="display:none"><?php echo get_text($list[$i]['content1'], 0) ?></textarea>
<input type="hidden" id="save_wr10_<?php echo $comment_id ?>" value="<?php echo $list[$i]['wr_10']; ?>" /> 추가
159번째 줄에
<tr>
<th scope="row">wr_10</th>
<td><input type="text" name="wr_10" id="wr_10" value="" /></td>
</tr>
하단에 스크립트 부분
function comment_box(comment_id, work)
{
..........생략........
// 댓글 수정
if (work == 'cu')
{
document.getElementById('wr_content').value = document.getElementById('save_comment_' + comment_id).value;
document.getElementById("wr_10").value = document.getElementById("save_wr10_" + comment_id).value; // 추가
wr_10으로 했습니다.
답변에 대한 댓글 10개
아래처럼 코드를 넣었어요. 여분필드 입력 받는 게 2개 (wr_11과 wr_12)라서....
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
<!-- 댓글 수정모드에서 여분필드 입력값 유지 시작 - 홈짱 -->
<input type="hidden" id="save_wr11_<?php echo $comment_id ?>" value="<?php echo $list[$i]['wr_11']; ?>" />
<input type="hidden" id="save_wr12_<?php echo $comment_id ?>" value="<?php echo $list[$i]['wr_12']; ?>" />
<!-- 댓글 수정모드에서 여분필드 입력값 유지 종료 - 홈짱 -->
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
<input type="text" name="wr_11" value="" id="wr_11" class="form-control input-sm" size="10" maxLength="20">
<input type="text" name="wr_12" value="" id="wr_12" class="form-control input-sm" size="10" maxLength="20">
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
/* 여분필드 값 유지 시작 - 홈짱 **********************************************************/
document.getElementById("wr_11").value = document.getElementById("save_wr11_" + comment_id).value;
document.getElementById('wr_12').value = document.getElementById('save_wr12_' + comment_id).value;
/* 여분필드 값 유지 종료 - 홈짱 **********************************************************/
<input type="hidden" id="save_wr12_<?php echo $comment_id ?>" value="<?php echo $list[$i]['wr_12']; ?>" />
여기 hidden을 text로 바꿔서 값이 정상적으로 나오는지 확인해 보세요.
// 여분필드 업데이트 시작 - 홈짱
if (number_format($wr_12 - $wr_11) == 0) {
$wr_10 = "수금 완료";
} else if (number_format($wr_12 - $wr_11) > 0) {
$wr_10 = "수금 중";
}
$sql = " update $write_table
set wr_10 = '$wr_10',
wr_11 = '$wr_11',
wr_12 = '$wr_12'
where wr_id = '$wr_id' ";
sql_query($sql);
// 여분필드 업데이트 종료 - 홈짱
현재 상황을 정리하자면, 댓글 입력을 통해서는 값이 정상적으로 잘 반영됩니다.
다만, 댓글 수정을 하면 입력값이 사라집니다.
<?php echo $list[$i]['wr_11'];?> 처럼 $list 변수를 사용할 경우,
최초 댓글 입력할 때는 잘 되는데,
댓글에 출력시킬 때나 댓글 수정모드에서는 값이 안 보입니다.
분명 여분필드엔 값이 들어가 있는데 말이죠.
근데, $view 변수를 활용해 출력시킬 경우,
값은 보이지만,
마지막 댓글로 작성한 값이 기존 댓글에 입력한 값들에 공통적으로 나타납니다.

그누 원본 기준으로
<input type="hidden" value="<?php echo strstr($list[$i]['wr_option'],"secret") ?>" id="secret_comment_<?php echo $comment_id ?>">
밑에
<input type="hidden" value="<?php echo $list[$i]['wr_11']; ?>" id="save_wr11_<?php echo $comment_id ?>">
추가하시고
document.getElementById('wr_content').value = document.getElementById('save_comment_' + comment_id).value;
아래에
document.getElementById('wr_11').value = document.getElementById('save_wr11_' + comment_id).value;
을 추가하시면 수정할때 기존 선택된 값이 들어갈겁니다.
view_comment.skin.php 파일 58라인쯤 아래 부분에 wr_11 추가하시고
해당 수정 부분에 변수 추가해서 해보세요~
<?php if($list[$i]['is_reply'] || $list[$i]['is_edit'] || $list[$i]['is_del']) {
$query_string = clean_query_string($_SERVER['QUERY_STRING']);
if($w == 'cu') {
$sql = " select wr_id, wr_content from $write_table where wr_id = '$c_id' and wr_is_comment = '1' ";
$cmt = sql_fetch($sql);
$c_wr_content = $cmt['wr_content'];
}
$c_reply_href = './board.php?'.$query_string.'&c_id='.$comment_id.'&w=c#bo_vc_w';
$c_edit_href = './board.php?'.$query_string.'&c_id='.$comment_id.'&w=cu#bo_vc_w';
?>
답변에 대한 댓글 1개
알려주신 곳에 아래처럼 wr_11, wr_12 두 개를 적용해봤는데,,,여전히 사라지네요.
if($w == 'cu') {
$sql = " select wr_11, wr_12, wr_id, wr_content from $write_table where wr_id = '$c_id' and wr_is_comment = '1' ";
$cmt = sql_fetch($sql);
$c_wr_content = $cmt['wr_content'];
}
제가 사용하는 방법은 일단 수정 할때 보면 hidden으로 값 저장해두고 그 값을 넣는건데 그걸 이용해서 댓글 리스트 할때 wr_11를 히든으로 넣으시고
수정 스크립트 할때 히든값 넣어주는 거 처럼 값을 넣어주시면 됩니다.
신비님이면 이정도 말씀드리면 이해하실거 같네요
답변을 작성하려면 로그인이 필요합니다.
아직 적용은 해보지 않았는데, 왠지 잘 될 것 같은 예감이...ㅎㅎ
적용해보고 댓글 남길게요..