view 페이지에서 필드 수정하기
본문
view 페이지 상태에서 필드를 수정하고 싶은데..
방법을 모르겠습니다. gpt 선생님도 이건 대답을 잘 못해주네요.. ㅎㅎ
<div id="vp_option">
<div id="vo_chk" onclick="toggleCheckboxByDiv('wr_9_pending', 1)">
<span>작성중 :</span>
<input type="checkbox" name="wr_9" id="wr_9_pending" value="1"
<?php echo ($view['wr_9'] == 1) ? 'checked' : ''; ?>>
</div>
<div id="vo_chk" onclick="toggleCheckboxByDiv('wr_9_reviewing', 2)">
<span>검토중 :</span>
<input type="checkbox" name="wr_9" id="wr_9_reviewing" value="2"
<?php echo ($view['wr_9'] == 2) ? 'checked' : ''; ?>>
</div>
<div id="vo_chk" onclick="toggleCheckboxByDiv('wr_9_completed', 3)">
<span>완료 :</span>
<input type="checkbox" name="wr_9" id="wr_9_completed" value="3"
<?php echo ($view['wr_9'] == 3) ? 'checked' : ''; ?>>
</div>
<button id="wr9_submit" onclick="saveWr9()">등록</button>
</div>
버튼을 눌렀을 때, wr_9 값을 수정하고 싶습니다.

이렇게 디자인해서 사용하고 싶은데.. 조언 부탁드립니다.
!-->답변 4
<script>
function toggleCheckboxByDiv(id, value) {
// 체크박스
$("input[name='wr_9']").prop("checked", false);
// 클릭된것
$("#" + id).prop("checked", true);
$("#wr9_submit").data("wr_9", value);
}
$("#wr9_submit").click(function () {
var bo_table = "<?php echo $bo_table; ?>";
var wr_id = "<?php echo $view['wr_id']; ?>";
var wr_9 = $("#wr9_submit").data("wr_9") || "<?php echo $view['wr_9']; ?>";
$.ajax({
url: "<?php echo G5_BBS_URL; ?>/change_wr9.php",
type: "POST",
data: { bo_table: bo_table, wr_id: wr_id, wr_9: wr_9 },
success: function(response) {
alert("상태가 변경되었습니다.");
},
error: function() {
alert("오류 발생. 다시 시도해 주세요.");
}
});
});
</script>
ajax 로 처리하면 쉽게 할 수 있습니다.
change_wr9.php 파일을 만들고 이 파일에서 값이 처리 되도록 하면 될 것입니다.
!-->
등록버튼은 필요없으니 삭제 하세요
자바스크립트 부분에 함수를 추가하세요.
라디오버튼을 클릭하면 즉시 적용 됩니다
function toggleCheckboxByDiv(i, val){
location.href="board.php?bo_table="+g5_bo_table+'&wr_id=<?php echo $view['wr_id'];?>&wr_9='+val;
}
view스킨 상단 php부분에 넣으세요
if(!empty($wr_9)){
sql_query("update $write_table set wr_9='$wr_9' where wr_id='$wr_id' ");
$view['wr_9']= $wr_9;
}
흠
toggleCheckboxByDiv 함수를 사용해서 id를 값을 정해주셔다면
함수에서 실제 여분필드명wr_9을 정의 해주셔다라는뜻인지요?
함수자체 와 업데이트 파일를 보여주시기바랍니다.
답변을 작성하시기 전에 로그인 해주세요.