65 lines
1.8 KiB
PHP
65 lines
1.8 KiB
PHP
<?
|
|
$sub_menu = "200200";
|
|
include_once("./_common.php");
|
|
|
|
check_demo();
|
|
|
|
if (!$ok)
|
|
alert();
|
|
|
|
if ($is_admin != "super")
|
|
alert("포인트 정리는 최고관리자만 가능합니다.");
|
|
|
|
$g4[title] = "포인트 정리";
|
|
include_once("./admin.head.php");
|
|
echo "<span id='ct'></span>";
|
|
include_once("./admin.tail.php");
|
|
flush();
|
|
|
|
echo "<script>document.getElementById('ct').innerHTML += '<p>포인트 정리중...';</script>\n";
|
|
flush();
|
|
|
|
$max_count = 50;
|
|
|
|
// 테이블 락을 걸고
|
|
$sql = " LOCK TABLES $g4[member_table] WRITE, $g4[point_table] WRITE ";
|
|
sql_query($sql);
|
|
|
|
$sql = " select mb_id, count(po_point) as cnt
|
|
from $g4[point_table]
|
|
group by mb_id
|
|
having cnt > {$max_count}+1
|
|
order by cnt ";
|
|
$result = sql_query($sql);
|
|
for ($i=0; $row=sql_fetch_array($result); $i++)
|
|
{
|
|
$count = 0;
|
|
$total = 0;
|
|
$sql2 = " select po_id, po_point
|
|
from $g4[point_table]
|
|
where mb_id = '$row[mb_id]'
|
|
order by po_id desc
|
|
limit $max_count, $row[cnt] ";
|
|
$result2 = sql_query($sql2);
|
|
for ($k=0; $row2=sql_fetch_array($result2); $k++)
|
|
{
|
|
$count++;
|
|
$total += $row2[po_point];
|
|
|
|
sql_query(" delete from $g4[point_table] where po_id = '$row2[po_id]' ");
|
|
}
|
|
|
|
insert_point($row[mb_id], $total, "포인트 {$count}건 정리", "@clear", $row[mb_id], $g4[time_ymd]."-".uniqid(""));
|
|
|
|
$str = $row[mb_id]."님 포인트 내역 ".number_format($count)."건 ".number_format($total)."점 정리<br>";
|
|
echo "<script>document.getElementById('ct').innerHTML += '$str';</script>\n";
|
|
flush();
|
|
}
|
|
|
|
// 테이블 락을 풀고
|
|
$sql = " UNLOCK TABLES ";
|
|
sql_query($sql);
|
|
|
|
echo "<script>document.getElementById('ct').innerHTML += '<p>총 ".$i."건의 회원포인트 내역이 정리 되었습니다.';</script>\n";
|
|
?>
|