소

회원탈퇴 후 같은 아이디로 가입못하게 하는 방법...

· 2010-02-07 (일) 12:59:03 · 2845 · 8

그누보드3에서 aaa라는 사람이 회원가입을 하고 게시판에 글을 씁니다.
그리고 탈퇴를 합니다. 
그 뒤에 다른 사람이 aaa라는 아이디로 새로 가입을 합니다.
그러면 예전에 aaa가 쓴 글을 수정 또는 삭제가 가능한데요.

탈퇴한 아이디로 가입을 하지 못하게 하는 방법을 알려주시면 감사드리겠습니다.

밑에 답변이 있긴 한데 수정을 해도 적용이 잘안되더라구요.

===================================================================================

회원 탈퇴시 회원 ID를 삭제하도록 하는것이 아니라 회원의 ID만 남겨두고 나머지 모든 항목(비밀번호포함)은 모두 지워버리도록 하는 방법이 있습니다. 
회원id를 삭제하도록 하는 delete 문을 update문으로 변경만 하시면 될 것 같군요.
bbs/admin/admin.lib.php 에 있는 function memberdelete($mb_id) 에서...

// 회원 삭제
function memberdelete($mb_id)
{
    global $cfg, $default;

    include_once "./lib/file.lib.php";

    $sql = " select mb_recommend from $cfg[table_member] where mb_id= '$mb_id' ";
    $mb = sql_fetch($sql);
    if ($mb[mb_recommend]) {
        $row = sql_fetch(" select count(*) from $cfg[table_member] where mb_id = '$mb[mb_recommend]' ");
        if ($row[0]) {
            insert_point($mb[mb_recommend], $default[de_recommend_point] * (-1), "{$mb_id}의 회원자료 삭제로 인한 추천인 포인트 반환");
        }
    }

// 회원 자료 삭제
     sql_query(" delete from $cfg[table_member] where mb_id = '$mb_id' ");

// 포인트 테이블에서 자료 삭제
    sql_query(" delete from $cfg[table_point] where mb_id = '$mb_id' ");
    
여기서 어떻게 수정을 해야 될까요?

|

댓글 8개

관리자모드에서 회원정보란에
회원탈퇴후 삭제 그쪽을 9999999로 숫자를 엄청 올려보세요...
그렇게 설정하면 개인정보 문제 때문에 태클이 많이 들어올 것 같습니다. 개인정보는 60일정도만 보관하는데...999999일로 바꾸면 같은 주민번호로는 평생 가입을 못합니다. ^^;;
그럼 탈퇴버턴 누르면 주민번호, 이메일 초기화 시키면되죠

bbs/mbleave.php

//12번째 줄 밑에
$sql = " update $cfg[table_member] set mb_jumin = '' where mb_id = '$member[mb_id]' ";
//주민번호 지우기..
$sql = " update $cfg[table_member] set mb_email = '' where mb_id = '$member[mb_id]' ";
//이메일 지우기

혹은

// 주민번호 이메일 초기화
$sql = " update $cfg[table_member] set mb_jumin = '' , mb_email = '' where mb_id = '$member[mb_id]' ";


참고로 관리자란에서 삭제시 delete 소스 대신
update $cfg[table_member] set mb_jumin = '' , mb_email = '' where mb_id = '$member[mb_id]'

이걸루 해야겠쬬...

------------------------
다른방법을 생각하면

가입일이랑 글 마지막 수정한 란을 비교하는 방법도 있게네요....
가입일이랑 게시글 등록한 날자를 비교해서 수정못하고 삭제 못하도록 해도 되고요

if ($member[mb_datetime] < $write[wr_datetime])
alert("탈퇴한 회원 글 입니다. 수정 권한이 없습니다.");

이게 가장 깔끔할것 같군요...
말씀해주신대로 수정을 했는데 탈퇴가 안됩니다. (*) 표시도 안나구요.
탈퇴버튼을 누른 후 로그인을 하면 다시 되더라구요.
이메일 부분은 공백으로 나옵니다.

mbleave.php 파일 수정

// 회원탈퇴일을 저장
$date = date("Ymd");
$sql = " update $cfg[table_member] set mb_leave_date = '$date' where mb_id = '$member[mb_id]' ";
//주민번호 지우기..
$sql = " update $cfg[table_member] set mb_jumin = '' where mb_id = '$member[mb_id]' ";

sql_query($sql);

# 3.09 수정 (로그아웃)
session_unregister("ss_mb_id");

if (!$url) {
$url = "./";
}

alert("{$member[mb_name]}님께서는 " . date("Y년 m월 d일") . "에 회원에서 탈퇴 하셨습니다.", $url);

=================================================================================

admin.lib.php 파일은 아래처럼 수정했는데 탈퇴도 안되고 주민번호도 그대로 남아 있습니다.

// 회원 삭제
function memberdelete($mb_id)
{
global $cfg, $default;

include_once "./lib/file.lib.php";

$sql = " select mb_recommend from $cfg[table_member] where mb_id= '$mb_id' ";
$mb = sql_fetch($sql);
if ($mb[mb_recommend]) {
$row = sql_fetch(" select count(*) from $cfg[table_member] where mb_id = '$mb[mb_recommend]' ");
if ($row[0]) {
insert_point($mb[mb_recommend], $default[de_recommend_point] * (-1), "{$mb_id}의 회원자료 삭제로 인한 추천인 포인트 반환");
}
}

// 회원 자료 삭제
//sql_query(" delete from $cfg[table_member] where mb_id = '$mb_id' ");

//주민번호 삭제
sql_query(" update $cfg[table_member] set mb_jumin = '' where mb_id = '$member[mb_id]' ");
;;; 실수..

$sql = " update $cfg[table_member] set mb_leave_date = '$date' where mb_id = '$member[mb_id]' ";

===>
$sql = " update $cfg[table_member] set mb_leave_date = '$date',mb_jumin = '' where mb_id = '$member[mb_id]' ";

수정해보세요
마지막에 알려주신 방법이 가장 좋은 것 같은데요.
if ($member[mb_datetime] < $write[wr_datetime]) 구문은 어디에 넣어야할 지 모르겠습니다.
bbs/gbupdate.php 이눔인가요 가물 가물 밖이라서 ;;;

if($w== u)

이문장 밑에 추가하시면 될것 같은데요
if ($member[mb_datetime] > $write[wr_datetime]) alert('탈퇴한 회원의 글입니다. 수정권한이 없습니다.');
댓글을 작성하시려면 로그인이 필요합니다.

그누4 질문답변

66,531건

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기 기존 게시물은 열람만 가능합니다.

+
제목 글쓴이 날짜 조회
10-02-07 조회 2,846
10-02-07 조회 1,624
10-02-07 조회 1,235
10-02-07 조회 1,596
10-02-07 조회 1,585
10-02-07 조회 2,030
10-02-07 조회 1,752
10-02-06 조회 1,597
10-02-06 조회 1,492
10-02-06 조회 3,025
10-02-06 조회 1,544
10-02-06 조회 1,598
10-02-06 조회 1,586
10-02-06 조회 1,254
10-02-06 조회 1,140
10-02-06 조회 1,731
10-02-06 조회 1,878
10-02-06 조회 1,058
10-02-06 조회 1,599
10-02-06 조회 1,533