회원삭제 관련 도움 좀 주세요 ㅠㅠㅠ 정보
회원삭제 관련 도움 좀 주세요 ㅠㅠㅠ본문
http://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=14432&sca=&sfl=wr_subject%7C%7Cwr_content&stx=%C8%B8%BF%F8%BB%E8%C1%A6&sop=and
이 팁을 보고 그대로 적용했는데
탈퇴시키면 빨간색으로 표시되어 남아있는것이 아니라 바로 삭제가 됩니다.
아무리 봐도 잘못된것이 없는거 같은데...뭐가 문제일까요..
// 회원 삭제
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[member_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
if ($mb[mb_level] > 1) {
$sql = " update $g4[member_table]
set mb_password = '',
mb_level = '1',
mb_email = '',
mb_homepage = '',
mb_password_q = '',
mb_password_a = '',
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'])."'
where mb_id = '$mb_id' ";
//echo $sql; exit;
sql_query($sql);
} else if($mb[mb_level] == 1) {
// 회원 자료 삭제
sql_query(" delete from $g4[member_table] where mb_id = '$mb_id' ");
/*
// 삭제된 자료를 또 삭제하면 완전 삭제함
if ($mb[mb_nick] != '[삭제됨]')
{
// 다른 사람이 이 회원아이디를 사용하지 못하도록 아이디만 생성해 놓습니다.
// 게시판에서 회원아이디는 삭제하지 않기 때문입니다.
sql_query(" insert into $g4[member_table] set mb_id = '$mb_id', mb_name='$mb[mb_name]', mb_nick='[삭제됨]', mb_ip='$mb[mb_ip]',
mb_datetime = '$g4[time_ymdhis]' ");
}
*/
// 포인트 테이블에서 삭제
sql_query(" delete from $g4[point_table] where mb_id = '$mb_id' ");
// 그룹접근가능 삭제
sql_query(" delete from $g4[group_member_table] where mb_id = '$mb_id' ");
// 쪽지 삭제
sql_query(" delete from $g4[memo_table] where me_recv_mb_id = '$mb_id' or me_send_mb_id = '$mb_id' ");
// 스크랩 삭제
sql_query(" delete from $g4[scrap_table] where mb_id = '$mb_id' ");
// 관리권한 삭제
sql_query(" delete from $g4[auth_table] where mb_id = '$mb_id' ");
// 그룹관리자인 경우 그룹관리자를 공백으로
sql_query(" update $g4[group_table] set gr_admin = '' where gr_admin = '$mb_id' ");
// 게시판관리자인 경우 게시판관리자를 공백으로
sql_query(" update $g4[board_table] set bo_admin = '' where bo_admin = '$mb_id' ");
// 아이콘 삭제
@unlink("$g4[path]/data/member/".substr($mb_id,0,2)."/$mb_id.gif");
}
}
이 팁을 보고 그대로 적용했는데
탈퇴시키면 빨간색으로 표시되어 남아있는것이 아니라 바로 삭제가 됩니다.
아무리 봐도 잘못된것이 없는거 같은데...뭐가 문제일까요..
// 회원 삭제
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[member_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
if ($mb[mb_level] > 1) {
$sql = " update $g4[member_table]
set mb_password = '',
mb_level = '1',
mb_email = '',
mb_homepage = '',
mb_password_q = '',
mb_password_a = '',
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'])."'
where mb_id = '$mb_id' ";
//echo $sql; exit;
sql_query($sql);
} else if($mb[mb_level] == 1) {
// 회원 자료 삭제
sql_query(" delete from $g4[member_table] where mb_id = '$mb_id' ");
/*
// 삭제된 자료를 또 삭제하면 완전 삭제함
if ($mb[mb_nick] != '[삭제됨]')
{
// 다른 사람이 이 회원아이디를 사용하지 못하도록 아이디만 생성해 놓습니다.
// 게시판에서 회원아이디는 삭제하지 않기 때문입니다.
sql_query(" insert into $g4[member_table] set mb_id = '$mb_id', mb_name='$mb[mb_name]', mb_nick='[삭제됨]', mb_ip='$mb[mb_ip]',
mb_datetime = '$g4[time_ymdhis]' ");
}
*/
// 포인트 테이블에서 삭제
sql_query(" delete from $g4[point_table] where mb_id = '$mb_id' ");
// 그룹접근가능 삭제
sql_query(" delete from $g4[group_member_table] where mb_id = '$mb_id' ");
// 쪽지 삭제
sql_query(" delete from $g4[memo_table] where me_recv_mb_id = '$mb_id' or me_send_mb_id = '$mb_id' ");
// 스크랩 삭제
sql_query(" delete from $g4[scrap_table] where mb_id = '$mb_id' ");
// 관리권한 삭제
sql_query(" delete from $g4[auth_table] where mb_id = '$mb_id' ");
// 그룹관리자인 경우 그룹관리자를 공백으로
sql_query(" update $g4[group_table] set gr_admin = '' where gr_admin = '$mb_id' ");
// 게시판관리자인 경우 게시판관리자를 공백으로
sql_query(" update $g4[board_table] set bo_admin = '' where bo_admin = '$mb_id' ");
// 아이콘 삭제
@unlink("$g4[path]/data/member/".substr($mb_id,0,2)."/$mb_id.gif");
}
}
댓글 전체
회원레벨이 1일때는 바로 삭제네요...
회원레벨 2이상두고 한번 해보세요~
회원레벨 2이상두고 한번 해보세요~
아, 그 문제였군요 답변 정말 감사합니다~
그런데 회원레벨이 1일때도 남아있게 하는 방법은 없을까요?
그런데 회원레벨이 1일때도 남아있게 하는 방법은 없을까요?
if ($mb[mb_level] > 0) {
...
mb_level = '0',
....
} else if($mb[mb_level] == 0) { <<<이줄 주석
일케하면 될듯하네요..안되도 책임 안져요~~ㅋ
...
mb_level = '0',
....
} else if($mb[mb_level] == 0) { <<<이줄 주석
일케하면 될듯하네요..안되도 책임 안져요~~ㅋ
와 정말 감사합니다!! 아주 잘 돼요!!
그런데 저 부분은 꼭 주석처리해야 되는건가요? 주석처리를 안했는데도 잘 돼서...상관없을까요;ㅅ;?
그런데 저 부분은 꼭 주석처리해야 되는건가요? 주석처리를 안했는데도 잘 돼서...상관없을까요;ㅅ;?
주석 하지 마세요...ㅋㅋ없애서 할려다 그냥 레벨로 거는걸로 해서...써놨다 못지웠네요..ㅋㅋ
그렇군요~ 정말 감사합니다^^ 많은 도움이 되었어요!!!