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

회원을 완전삭제하려고 하는데요. 채택완료

여행아 10년 전 조회 12,188

회원을 완전삭제하려고 하는데요.

 

http://sir.co.kr/qa/?wr_id=5732&stx=%ED%83%88%ED%87%B4&sst=wr_num&unanswered=0&s_tag=%EA%B7%B8%EB%88%84%EB%B3%B4%EB%93%9C5">http://sir.co.kr/qa/?wr_id=5732&stx=%ED%83%88%ED%87%B4&sst=wr_num&unanswered=0&s_tag=%EA%B7%B8%EB%88%84%EB%B3%B4%EB%93%9C5

이것 처럼하면 회원탈퇴는 되나 관리자 모드에서 삭제가 안됩니다.

 

lib 폴더안에 common.lib.php 파일내에 member_delete() 함수를 찾아서..

 

아래 내용을

 

    // 회원자료는 정보만 없앤 후 아이디는 보관하여 다른 사람이 사용하지 못하도록 함 : 061025

    $sql = " update {$g5['member_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', G5_SERVER_TIME)." 삭제함\n{$mb['mb_memo']}', mb_leave_date = '".date('Ymd', G5_SERVER_TIME)."' where mb_id = '{$mb_id}' ";

    sql_query($sql);​

 

요것으로 변경하면 아마도 완전 삭제될것 같네요.

 

    // 회원 자료 삭제

    sql_query(" delete from $g5[member_table] where mb_id = '$mb_id' ");

 

이런식으로 하면

전체 페이지가 하얀 바탕으로 뜨면서 먹통이 됩니다. 

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

답변 2개

채택된 답변
+20 포인트
10년 전

/lib/common.lib.php 에 해당 코멘트에 있는 내용 전체를 카피해서 모두 넣고 해보세요. 

해봤는데 정상적으로 삭제 잘 되네요. 회원 삭제를 2번 해야 완전 삭제됩니다.

 

기존 내용 여기서부터

// 회원자료는 정보만 없앤 후 아이디는 보관하여 다른 사람이 사용하지 못하도록 함 : 061025 

.....

....

.....

...

// 아이콘 삭제

@unlink(G5_DATA_PATH.'/member/'.substr($mb_id,0,2).'/'.$mb_id.'.gif'); 

 

여기까지 내용을 코멘트에 있는 내용으로 교체하면 됩니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

여행아
10년 전
답변 감사합니다.

// 회원자료는 정보만 없앤 후 아이디는 보관하여 다른 사람이 사용하지 못하도록 함 : 061025
$sql = " update {$g5['member_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', G5_SERVER_TIME)." 삭제함\n{$mb['mb_memo']}', mb_leave_date = '".date('Ymd', G5_SERVER_TIME)."' where mb_id = '{$mb_id}' ";
sql_query($sql);​

// 아이콘 삭제
@unlink(G5_DATA_PATH.'/member/'.substr($mb_id,0,2).'/'.$mb_id.'.gif');

이렇게 수정이 되는거잖아요?

이렇게 하면 사이트 전체가
하얀 바탕으로 뜨면서 먹통이 되요.​

원본 소스입니다.
건들인건 없는데... 왜 먹통이 ㅜㅜ

[code]
// 회원자료는 정보만 없앤 후 아이디는 보관하여 다른 사람이 사용하지 못하도록 함 : 061025
$sql = " update {$g5['member_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', G5_SERVER_TIME)." 삭제함\n{$mb['mb_memo']}', mb_leave_date = '".date('Ymd', G5_SERVER_TIME)."' where mb_id = '{$mb_id}' ";
sql_query($sql);

// 포인트 테이블에서 삭제
sql_query(" delete from {$g5['point_table']} where mb_id = '$mb_id' ");

// 그룹접근가능 삭제
sql_query(" delete from {$g5['group_member_table']} where mb_id = '$mb_id' ");

// 쪽지 삭제
sql_query(" delete from {$g5['memo_table']} where me_recv_mb_id = '$mb_id' or me_send_mb_id = '$mb_id' ");

// 스크랩 삭제
sql_query(" delete from {$g5['scrap_table']} where mb_id = '$mb_id' ");

// 관리권한 삭제
sql_query(" delete from {$g5['auth_table']} where mb_id = '$mb_id' ");

// 그룹관리자인 경우 그룹관리자를 공백으로
sql_query(" update {$g5['group_table']} set gr_admin = '' where gr_admin = '$mb_id' ");

// 게시판관리자인 경우 게시판관리자를 공백으로
sql_query(" update {$g5['board_table']} set bo_admin = '' where bo_admin = '$mb_id' ");

// 아이콘 삭제
@unlink(G5_DATA_PATH.'/member/'.substr($mb_id,0,2).'/'.$mb_id.'.gif');
}
[/code]
작은별
10년 전
편리님 코멘트에 있는 내용을 전체 카피해서 하셔야 합니다.
이 부분이 왜 자꾸 나오는지 모르겠네요. 편리님 코멘트 내용에 이 문구는 없는데요.
// 회원자료는 정보만 없앤 후 아이디는 보관하여 다른 사람이 사용하지 못하도록 함 : 061025
이게 그대로 있으신거면 복사해서 붙여넣기 하신게 아닌게 되는데요.;;
제 답변 다시 확인해 보세요;; 부터~ 까지 교체 입니다.;;
여행아
10년 전
답변 감사합니다.
작업을 하면서 테스트로 회원을 많이 등록했다가
운영하려니 너무 지저분 해서요.

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

P
10년 전

truncate 명령을 쓰시면 깨끗하게 명령어로 한번에 처리됩니다

 

mysql truncate 으로 검색하세요 

 

저도 delete 명령어를 썼는데요... PWneo님덕에 이제 저도 truncate 쓰려고^^

 

 

로그인 후 평가할 수 있습니다

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

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

로그인