delete_comment.php 질문드립니다.
본문
포인트 별로 임의의 등급을 부여하고
포인트를 소비하는 행동을 할 경우 (예 : 댓글삭제, 게시글 삭제 등)
포인트를 차감 후 회원의 포인트를 조회하고,
기준 미달이면 등급을 조절하려고 합니다.
그래서 delete_comment.php 와 delete.php 에 아래의 코드를 넣었으나
기준점에서 작동하지 않네요.
그래서 delete_comment.php 의 하단 goto_url 을 주석 처리 한 뒤
$member['mb_point'] 를 찍어보니
삭제하기 전 포인트를 갖고 있더라구요;
분명 차감 코드 뒤에 포인트를 조회 코드를 넣었는데..
왜이런건가요!?
if (!delete_point($write['mb_id'], $bo_table, $comment_id, '댓글')) {
insert_point($write['mb_id'], $board['bo_comment_point'] * (-1), "{$board['bo_subject']} {$write['wr_parent']}-{$comment_id} 댓글삭제");
}
// 2018-02-28 댓글 작성 등급조절
$mem_grd = $member['mb_grade'];
if($member['mb_point'] < 160){
if ($member['mb_grade'] == '초보농부') {
sql_query("UPDATE g5_member SET mb_grade = '예비농부' WHERE mb_id = '".$member['mb_id']."'");
alert('글 삭제로 인해 예비농부로 강등 되셨습니다.',G5_HTTP_BBS_URL.'/board.php?bo_table='.$bo_table.'&wr_id='.$write['wr_parent'].'&page='.$page. $qstr);
}
} else if ($member['mb_point'] < 500){
if ($mem_grd == '학생농부') {
sql_query("UPDATE g5_member SET mb_grade = '초보농부' WHERE mb_id = '".$member['mb_id']."'");
alert('글 삭제로 인해 초보농부로 강등 되셨습니다.',G5_HTTP_BBS_URL.'/board.php?bo_table='.$bo_table.'&wr_id='.$write['wr_parent'].'&page='.$page. $qstr);
}
} else if ($member['mb_point'] < 1000){
if ($mem_grd == '선생농부') {
sql_query("UPDATE g5_member SET mb_grade = '학생농부' WHERE mb_id = '".$member['mb_id']."'");
alert('글 삭제로 인해 학생농부로 강등 되셨습니다.',G5_HTTP_BBS_URL.'/board.php?bo_table='.$bo_table.'&wr_id='.$write['wr_parent'].'&page='.$page. $qstr);
}
} else if ($member['mb_point'] < 2000){
if ($mem_grd == '교수농부') {
sql_query("UPDATE g5_member SET mb_grade = '선생농부' WHERE mb_id = '".$member['mb_id']."'");
alert('글 삭제로 인해 선생농부로 강등 되셨습니다.',G5_HTTP_BBS_URL.'/board.php?bo_table='.$bo_table.'&wr_id='.$write['wr_parent'].'&page='.$page. $qstr);
}
} else if ($member['mb_point'] < 5000){
if ($mem_grd == '박사농부') {
sql_query("UPDATE g5_member SET mb_grade = '교수농부' WHERE mb_id = '".$member['mb_id']."'");
alert('글 삭제로 인해 교수농부로 강등 되셨습니다.',G5_HTTP_BBS_URL.'/board.php?bo_table='.$bo_table.'&wr_id='.$write['wr_parent'].'&page='.$page. $qstr);
}
} else {
if (($member['mb_point'] < 10000) && ($mem_grd == '농업의 신')) {
sql_query("UPDATE g5_member SET mb_grade = '박사농부' WHERE mb_id = '".$member['mb_id']."'");
alert('글 삭제로 인해 박사농부로 강등 되셨습니다.',G5_HTTP_BBS_URL.'/board.php?bo_table='.$bo_table.'&wr_id='.$write['wr_parent'].'&page='.$page. $qstr);
}
}
!-->
답변 2
$member['mb_point'] 는 자동 갱신되지 않습니다.
get_point_sum 함수를 직접호출 하셔서 확인하시고 직접 이 변수에 내용을 치환해주시면 될겁니다.
$member['mb_point'] = get_point_sum($mb_id);
포인트 부분이 호출될때 반영된 포인트가 적용되어 처리되어지는게 아니기 때문에 그러니 재 호출해서 적용해 주시던지 함수로 호출해서 변수에 적용해 주셔야 할듯 합니다.
답변을 작성하시기 전에 로그인 해주세요.