중복 포인트 적립 문의
본문
<?php
게시판 에서 write_update.skin.php 이곳에 아래 코드에서 "wr_10" 이것만 빼면 "wr_7" 포인트가 정상 적립 됩니다.
"wr_10"을 넣으면 안됩니다. 근데 여기에다 "wr_10"을 더해서 포인트를 주고자 합니다. 즉 wr_7 + wr_10 = 포인트 적립 이렇게요 어케 해야 하는지요.
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, $wr_10); //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 = '이용 포인트',
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);
?>
<?
$https_url = ".";
{
alert("$wr_7 + $wr_7 포인트 적립! ","{$https_url}/board.php?bo_table=$bo_table" . $qstr);
}
?>
답변 2
왠지 모르게 질문 내용이 조금 보기가 힘드네요.
위의 소스에서
$add_point = ereg_replace("[^0-9]", "", $wr_7,$wr_10); //select 로 넘어온 여분 필드에서 숫자만 추출
위 부분을 아래와 같이 고쳐 보세요.
$add_point = preg_replace("/[^0-9]/", "", (int)$wr_7 + (int)$wr_10 ); //select 로 넘어온 여분 필드에서 숫자만 추출
$add_point = ereg_replace("[^0-9]", "", $wr_7,$wr_10); //select 로 넘어온 여분 필드에서 숫자만 추출
$add_point = $add_point * (+1); //포인트 증감 함으로 양수화 시켜줌
를
$_wr_7 = (int) ereg_replace("[^0-9]", "", $wr_7);//select 로 넘어온 여분 필드에서 숫자만 추출
$_wr_10 = (int) ereg_replace("[^0-9]", "", $wr_10);//select 로 넘어온 여분 필드에서 숫자만 추출
$add_point = abs($_wr_7 + $_wr_10); //포인트 증감 함으로 양수화 시켜줌
로 수정해보세요
답변을 작성하시기 전에 로그인 해주세요.