״ 4 ޸ȸó (3) - ó

Ҵ   
   ȸ 106310   õ 0     õ 0    

1년 이상 미접속 회원을 휴면으로 처리했기 때문에, 장기 미접속자 삭제하는 프로그램도 수정해야 합니다.

장기미접속자는 3년 이상 미접속으로 수정하고,

$g4[member_table]과 $g4[unlogin_table]에서 탈퇴로 마크 합니다.

 

휴면을 먼저 돌리고, 장기미접속을 돌려야 합니다.

 

 

 

adm/member_delete_unvisited.php 파일을 수정...

 

<?
$sub_menu = "200100";
include_once("./_common.php");

check_demo();

auth_check($auth[$sub_menu], "d");

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();

// 회원 삭제 함수 인클루드.
include_once("$g4[admin_path]/admin.lib.php");

// 개별 삭제
if ($w == 'd' && $mb_id) {

    // 데이터
    $mb = get_member($mb_id);

    // 체크
    if (!$mb['mb_id']) {

        alert("회원 데이터가 존재하지 않습니다.");

    }

    // 회원삭제
    member_delete($mb_id);

    // 이동
    goto_url("./member_delete.php");

}

$login_time = 365 * 5; //지난 몇일 동안 접속하지 않은 회원을 삭제할지를 결정?
$today_login_time = date("Y-m-d H:i:s", $g4['server_time'] - ($login_time * 86400));

// $login_time일 이전에 로그인한 회원 출력. 즉 최근 $login_time일안에 로그인한 사람이 없다는 것이다.
$sql = " select * from $g4[unlogin_table] where mb_today_login < '$today_login_time' and mb_level > '1' order by mb_today_login desc ";
$result = sql_query($sql);

$j = 0;
for ($i=0; $row=sql_fetch_array($result); $i++) {

        // 회원삭제
        member_delete($row['mb_id']);

    } // end if

} // end for
?>
</table>

<br><br>

<?
echo "<script>document.getElementById('ct').innerHTML += '<p>총 ".$j."명의 회원이 정리 되었습니다.';</script>\n";
?>

 

 

 

adm/admin.lib.php에서 member_delete 함수 수정...

 

// 회원 삭제
function member_delete($mb_id)
{
    global $config;
    global $g4;

    $sql = " select mb_name, mb_nick, mb_ip, mb_recommend, mb_memo, mb_level from $g4[unlogin_table] where mb_id= '$mb_id' ";
    $mb = sql_fetch($sql);
    if ($mb[mb_recommend]) {
        $row = sql_fetch(" select count(*) as cnt from $g4[member_table] where mb_id = '".addslashes($mb[mb_recommend])."' ");
        if ($row[cnt])
            insert_point($mb[mb_recommend], $config[cf_recommend_point] * (-1), "{$mb_id}님의 회원자료 삭제로 인한 추천인 포인트 반환", '@member', $mb[mb_recommend], "{$mb_id} 추천인 삭제");
    }

    // 회원자료는 정보만 없앤 후 아이디는 보관하여 다른 사람이 사용하지 못하도록 함 : 061025
    // 휴면화 되면서 대부분의 정보는 clear 되지만, 한번 더 확실하게...
    if ($mb[mb_level] >= 1) {
        $sql = " update $g4[member_table]
                    set
                        mb_name = '',
                        mb_nick = '',
                        mb_password = '',
                        mb_level = '1',
                        mb_email = '',
                        mb_homepage = '',
                        mb_tel = '',
                        mb_hp = '',
                        mb_zip1 = '',
                        mb_zip2 = '',
                        mb_addr1 = '',
                        mb_addr2 = '',
                        mb_birth = '',
                        mb_sex = '',
                        mb_signature = '',
                        mb_memo = '".date("Ymd",$g4['server_time'])." 삭제함\n\n$mb[mb_memo]',
                        mb_leave_date = '".date("Ymd",$g4['server_time'])."',
                        mb_profile='',
                        mb_memo_call='',
                        mb_memo_no_reply_text='',
                        mb_1='',
                        mb_2='',
                        mb_3='',
                        mb_4='',
                        mb_5='',
                        mb_6='',
                        mb_7='',
                        mb_8='',
                        mb_9='',
                        mb_10=''
                  where mb_id = '$mb_id' ";
        sql_query($sql);

        // 휴면 테이블에서는 mb_name, mb_nick은 clear 하지 않습니다.
        $sql = " update $g4[unlogin_table]
                    set
                        mb_password = '',
                        mb_level = '1',
                        mb_email = '',
                        mb_homepage = '',
                        mb_tel = '',
                        mb_hp = '',
                        mb_zip1 = '',
                        mb_zip2 = '',
                        mb_addr1 = '',
                        mb_addr2 = '',
                        mb_birth = '',
                        mb_sex = '',
                        mb_signature = '',
                        mb_memo = '".date("Ymd",$g4['server_time'])." 삭제함\n\n$mb[mb_memo]',
                        mb_leave_date = '".date("Ymd",$g4['server_time'])."',
                        mb_profile='',
                        mb_memo_call='',
                        mb_memo_no_reply_text='',
                        mb_1='',
                        mb_2='',
                        mb_3='',
                        mb_4='',
                        mb_5='',
                        mb_6='',
                        mb_7='',
                        mb_8='',
                        mb_9='',
                        mb_10=''
                  where mb_id = '$mb_id' ";
        sql_query($sql);

    }

 

 

... 등등등

- opencode.co.kr -


Page 2/28
2015-10   8955   Ҵ
2015-10   8892   Ҵ
2015-10   8786   Ҵ
2015-10   8838   Ҵ
2015-10   107457   Ҵ
2015-10   9488   Ҵ
2015-10   8966   Ҵ
2015-10   10762   Ҵ
2015-09   9040   Ҵ
2015-09   10862   Ҵ
2015-09   10439   Ҵ
2015-09   10103   Ҵ
2015-09   106311   Ҵ
2015-09   103978   Ҵ
2015-09   108180   Ҵ
2014-06   158113   Ҵ
2014-04   14125   Ҵ
2014-04   13225   Ҵ
2014-04   13366   Ҵ
2014-03   18311   Ҵ