테스트 사이트 - 개발 중인 베타 버전입니다

포인트 차감 문의합니다. 채택완료

김선만 11년 전 조회 5,610
게시판 write_update.skin.php 파일에 아래 코드 적용했습니다.
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
// 포인트가 음수이고 회원의 포인트가 0 이거나 작다면 
 if ($member[mb_point] + $sum_point < 0) 
 alert("보유하신 포인트(".number_format($member[mb_point]).")임 포인트 부족 신청 불가.\\n\\n포인트를 적립하신 후 이용해 주십시오.", "$g5[path]"); 
$add_point = ereg_replace("[^0-9]", "", $wr_7); //select 로 넘어온 여분 필드에서 숫자만 추출 
$add_point = $add_point * (-1); //포인트 차감 함으로
// 포인트 건별 생성 
$sql = " insert into $g5[point_table] 
set mb_id = '$member[mb_id]', 
po_datetime = '$g5[time_ymdhis]', 
po_content = '주문1', 
po_point = '$add_point', 
po_rel_table = '$bo_table', 
po_rel_id = '$member[mb_id]', 
po_rel_action = '포인트차감' "; 
sql_query($sql); 
// 포인트 내역의 합을 구하고 
$sql = " select sum(po_point) as sum_po_point from $g5[point_table] where mb_id = '$member[mb_id]' "; 
$row = sql_fetch($sql); 
$sum_point = $row[sum_po_point]; 
// 포인트 UPDATE 
$sql = " update $g5[member_table] set mb_point = '$sum_point' where mb_id = '$member[mb_id]' "; 
 sql_query($sql);
 {
    alert("$wr_7 포인트 차감. 주문완료! 내포인트:$sum_point ","$g5[path]");
}
?>
위 코드는 본인 포인트가 "-" 이면 신청 불가 합니다.
근데 본인 포인트가 100 포인트인 상태에서 "wr_7" 값이 100 포인트 이상 선택 시("wr-7" 값은 500p,700p,900p 값)으로 주문해도 주문이 되고 본인 포인트 "-" 가 되며 주문이 가능합니다.
전 "wr-7"값보다 많으면 주문 가능, 적으면 주문 불가 이렇게 하고자 합니다.
고수 님 좀 봐주십시오.......;;
또 크롬에서 주문 완료, 주문 불가란 메시지가 뜨지 않는데 원래 그런건지요. 익스는 정상이구요
댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트
11년 전
$wr_7 이라는게 무엇에 사용되는지 모르겠습니다만 어떻게 기록이 되는지도 모르겠고  숫자만 넘어 오는지 아니면 다른것도 넘어 와서 본문에 숫자만 빼고 제외 시키는지 알 수 없는데 기본적으로 셀렉트에서 숫자만 넘어 올텐데 $add_point = ereg_replace("[^0-9]", "", $wr_7); //select 로 넘어온 여분 필드에서 숫자만 추출 라는게 왜 들어가 있는지 알 수 없으나 아래 처럼 하시면 될거 같은데요 ?
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
// 포인트가 음수이고 회원의 포인트가 0 이거나 작다면 $add_point = ereg_replace("[^0-9]", "", $wr_7); //select 로 넘어온 여분 필드에서 숫자만 추출
if ($member[mb_point] + $sum_point < 0 || $member[mb_point] + $sum_point < $wr_7) {
 alert("보유하신 포인트(".number_format($member[mb_point]).")임 포인트 부족 신청 불가.\\n\\n포인트를 적립하신 후 이용해 주십시오.", "$g5[path]"); }
$add_point = $add_point * (-1); //포인트 차감 함으로
// 포인트 건별 생성 
$sql = " insert into $g5[point_table] 
set mb_id = '$member[mb_id]', 
po_datetime = '$g5[time_ymdhis]', 
po_content = '주문1', 
po_point = '$add_point', 
po_rel_table = '$bo_table', 
po_rel_id = '$member[mb_id]', 
po_rel_action = '포인트차감' "; 
sql_query($sql); 
// 포인트 내역의 합을 구하고 
$sql = " select sum(po_point) as sum_po_point from $g5[point_table] where mb_id = '$member[mb_id]' "; 
$row = sql_fetch($sql); 
$sum_point = $row[sum_po_point]; 
// 포인트 UPDATE 
$sql = " update $g5[member_table] set mb_point = '$sum_point' where mb_id = '$member[mb_id]' "; 
 sql_query($sql);
 {
    alert("$wr_7 포인트 차감. 주문완료! 내포인트:$sum_point ","$g5[path]");
}
?>
로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

김선만
11년 전
감사, 감사, 감사요. 잘 됩니다.
커피는막시님 덕에 해결했습니다. 고맙습니다.
김선만
11년 전
막심님 문제가 있는데요
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
// 포인트가 음수이고 회원의 포인트가 0 이거나 작다면
$add_point = ereg_replace("[^0-9]", "", $wr_7); //select 로 넘어온 여분 필드에서 숫자만 추출
if ($member[mb_point] + $sum_point < 0 || $member[mb_point] + $sum_point < $wr_7) {
alert("보유하신 포인트(".number_format($member[mb_point]).")임 포인트 부족 신청 불가.\\n\\n포인트를 적립하신 후 이용해 주십시오.", "$g5[path]");
}
이렇게 했는데 포인트 불가란 메시지는 뜨는데요.
글이 작성됩니다.
포인트 부족이란 메시지를 보여주고 글작성이 안되야 하는데...;;

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인