새로운 db테이블에 저장된 댓글을 수정 및 삭제를 하고 싶습니다.
본문
회원들의 댓글을 신규 db 테이블(comment_history_table)을 생성하여 관리자 페이지에 모이게 만들었습니다.
여기서 전체 댓글이 모이는게 아니라 관리자가 댓글에서 확정을 해 주면 db에 모이게 만들었습니다.
현재 확정하면 이상 없이 db에 저장이 되며 관리자 페이지에서 볼 수 있습니다.
그런데 접수로 변경하면 확정에 들어가 있던 그 댓글이 삭제가 되어야 되는 삭제가 되지 않고 있습니다.
그리고 한가지도 탈락으로 변경을 하면 확정된 댓글이 탈락으로 변경이 되어야 하는데 이 또한 되지 않고 있습니다.
다시 말해 확정이 된 댓글은 잘 들어오고 있습니다. 그런데 접수나 탈락으로 변경을 하면 아무 변화가 없고 접수나 탈락으로 변경했던 댓글을 다시 확정으로 변경을 하면 새롭게 db에 저장이 되고 있습니다....ㅠ.ㅠ
어떻게 수정을 해야할까요?? 도움 부탁드립니다.
if($_POST['wr_6'] == "확정") {
sql_query(" insert into {$g5['comment_history_table']} set comm_year = '{$row['wr_1']}', comm_quarter = '{$row['wr_3']}', comm_subject = '{$row['wr_subject']}', comm_w_id = '{$row['wr_name']}', comm_datetime = '".G5_TIME_YMDHIS."', comm_mb_id = '{$row['mb_id']}', comm_birth = '{$row['wr_19']}', comm_old = '{$row['wr_20']}', comm_sex = '{$row['wr_21']}', comm_hp = '{$row['wr_22']}', comm_work = '{$row['wr_23']}', comm_purpose = '{$row['wr_24']}', comm_path = '{$row['wr_25']}', comm_email = '{$row['wr_26']}', comm_zip = '{$row['wr_27']}', comm_addr1 = '{$row['wr_28']}', comm_addr2 = '{$row['wr_29']}', comm_addr3 = '{$row['wr_30']}', comm_addr_jibeon = '{$row['wr_31']}', comm_note = '{$row['wr_6']}' ");
sql_fetch(" select comm_id, comm_quarter, comm_subject, comm_w_id, comm_mb_id, comm_birth, comm_old, comm_sex, comm_hp, comm_work, comm_purpose, comm_path, comm_email, comm_zip, comm_addr1, comm_addr2, comm_addr3, comm_addr_jibeon, comm_note from {$g5['comment_history_table']} where comm_id = '{$row['comm_id']}' ");
} else if($_POST['wr_6'] == "접수") {
sql_query(" delete from {$g5['comment_history_table']} where comm_id = '".$row['comm_id']."' ");
} else if($_POST['wr_6'] == "탈락") {
sql_query(" update {$g5['comment_history_table']} set comm_note = '{$row['wr_6']}' where comm_mb_id = '{$row['comm_mb_id']}' ");
sql_fetch(" select comm_id, comm_quarter, comm_subject, comm_w_id, comm_mb_id, comm_birth, comm_old, comm_sex, comm_hp, comm_work, comm_purpose, comm_path, comm_email, comm_zip, comm_addr1, comm_addr2, comm_addr3, comm_addr_jibeon, comm_note from {$g5['comment_history_table']} where comm_id = '{$row['comm_id']}' ");
}
답변 3
1. 접수
$row['comm_id'] 가 빈 값이어서 그럴 듯 합니다.
delete from comment_history_table where comm_id = ''
2. 탈락
$row['comm_mb_id'] 가 빈 값이어서 그럴 듯 합니다.
where comm_mb_id
=> where comm_id
else if($POST['wr_6'] == "접수") 와 else if($POST['wr_6'] == "탈락") 이 부분의 코드에서는 해당 댓글을 삭제하거나 상태를 변경하는 쿼리가 실행되지 않고 있는것 같습니다.
다음과 같이 수정해 보시는건 어떨까 합니다.
if ($_POST['wr_6'] == "확정") {
sql_query("INSERT INTO {$g5['comment_history_table']} SET comm_year = '{$row['wr_1']}', comm_quarter = '{$row['wr_3']}', comm_subject = '{$row['wr_subject']}', comm_w_id = '{$row['wr_name']}', comm_datetime = '".G5_TIME_YMDHIS."', comm_mb_id = '{$row['mb_id']}', comm_birth = '{$row['wr_19']}', comm_old = '{$row['wr_20']}', comm_sex = '{$row['wr_21']}', comm_hp = '{$row['wr_22']}', comm_work = '{$row['wr_23']}', comm_purpose = '{$row['wr_24']}', comm_path = '{$row['wr_25']}', comm_email = '{$row['wr_26']}', comm_zip = '{$row['wr_27']}', comm_addr1 = '{$row['wr_28']}', comm_addr2 = '{$row['wr_29']}', comm_addr3 = '{$row['wr_30']}', comm_addr_jibeon = '{$row['wr_31']}', comm_note = '{$row['wr_6']}' ");
sql_fetch("SELECT comm_id, comm_quarter, comm_subject, comm_w_id, comm_mb_id, comm_birth, comm_old, comm_sex, comm_hp, comm_work, comm_purpose, comm_path, comm_email, comm_zip, comm_addr1, comm_addr2, comm_addr3, comm_addr_jibeon, comm_note FROM {$g5['comment_history_table']} WHERE comm_id = '{$row['comm_id']}' ");
} else if ($_POST['wr_6'] == "접수") {
sql_query("DELETE FROM {$g5['comment_history_table']} WHERE comm_id = '".$row['comm_id']."' ");
sql_query("UPDATE {$g5['write_table']} SET wr_6 = '접수' WHERE wr_id = '".$row['wr_id']."' ");
} else if ($_POST['wr_6'] == "탈락") {
sql_query("UPDATE {$g5['comment_history_table']} SET comm_note = '{$row['wr_6']}' WHERE comm_id = '{$row['comm_id']}' ");
sql_query("UPDATE {$g5['write_table']} SET wr_6 = '탈락' WHERE wr_id = '".$row['wr_id']."' ");
sql_fetch("SELECT comm_id, comm_quarter, comm_subject, comm_w_id, comm_mb_id, comm_birth, comm_old, comm_sex, comm_hp, comm_work, comm_purpose, comm_path, comm_email, comm_zip, comm_addr1, comm_addr2, comm_addr3, comm_addr_jibeon, comm_note FROM {$g5['comment_history_table']} WHERE comm_id = '{$row['comm_id']}' ");
}
1. "접수"로 변경하는 경우에는 {$g5['write_table']} 에서 해당 댓글의 wr_6 필드를 "접수"로 업데이트 하도록 변경
2. "탈락"으로 변경하는 경우에도 {$g5['write_table']} 에서 해당 댓글의 wr_6 필드를 "탈락"으로 업데이트 하도록 변경
!-->어떤 파일에서 작업하시는 건가요?
그리고
sql_fetch(" select ....");
return 값을 받지 않으면 굳이 실행할 필요가 있을까요.