포인트 초기화 관련 질문드립니다.
본문
전체 회원 포인트 초기화를 하고 싶어서 찾아보고
<?php
$sub_menu = "200210";
include_once("./_common.php");
auth_check($auth[$sub_menu], "r");
// 테이블 락을 걸고
$sql = " LOCK TABLES $g5[member_table] WRITE, $g5[point_table] WRITE ";
@sql_query($sql);
$sql = " select mb_id, sum(po_point) as sum_point from $g5[point_table] group by mb_id order by mb_id ";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++) {
$sql = " update $g5[member_table]
set mb_point = '$row[sum_point]'
where mb_id = '$row[mb_id]' ";
sql_query($sql);
}
sql_query(" delete from $g5[point_table] ");
sql_query(" alter table $g5[point_table] auto_increment=1 ");
$count = 0;
$sql = " select mb_id, mb_point from $g5[member_table] order by mb_id ";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++) {
$sql = " insert $g5[point_table]
set mb_id = '$row[mb_id]',
po_datetime = '$g5[time_ymdhis]',
po_content = '포인트리셋',
po_point = '$row[mb_point]' ";
sql_query($sql);
$count++;
}
sql_query(" update g5_point set po_point = '0'; ");
// 테이블 락을 풀고
$sql = " UNLOCK TABLES ";
sql_query($sql);
echo "<span size=5>총 {$count}건의 회원포인트 내역이 정리 되었습니다.</span>";
?>
<p><input type=button value='포인트 페이지로' onClick="javascript:self.location='./point_list.php'"></p>
이 소스를 넣었더니, 지금까지 지급되었던 내역까지 모두 초기화가 되더라구요,,,
지금까지 지급되었던 내역은 그대로 놔두고
전체 회원들의 포인트를 0으로 만드려면 어떻게 해야 할까요?
답변 2
g5_member 테이블에 mb_point 0으로 업데이트시키면 되지않을까요?
지금까지 지급되었던 내역은 그대로 놔두고
전체 회원들의 포인트를 0으로 만드려면 어떻게 해야 할까요?
<-------- 이건 아무 의미가 없습니다
포인트 내역이 남아있으면 다음번 포인트 지급할때 내역을 합산해서 회원 테이블 mb_point필드를 업데이트 해버립니다