글 수 151
2006.04.25 09:22:46 (*.105.150.151)
12239
9 / 0

한글사랑 님의 레벨 10만드는것과 영진님의 레벨 10 로그인 불과를 합쳐서
레벨 10에 대한 회원의 로그인 자체를 막는다는 내용입니다^^;

# 한글사랑님이 만드신것(회원 탈퇴요청서 DB삭제않고, 레벨10으로 만들기) #
회원 자의에 의해 탈퇴를 하여야 하나, 필요한 분이 있을수 있어 올립니다.
수정할 소스는 member_out.php 입니다.
우선적으로 기본 사용(글쓰기,코맨트등)을 9등급 처리한 상태에서 10등급은 이용이 안되게 하면 좋겠네요.
원본 소스는 그냥 주석 처리만 했습니다..
주석 보시면 이해가 가리라 생각 합니다.

<?
// 라이브러리 함수 파일 인크루드
        include "lib.php";

        if(!eregi("member_modify.php",$HTTP_REFERER)) Error("제대로 된 접근을 하여 주시기 바랍니다");

// DB 연결
        if(!$connect) $connect=dbConn();

// 회원 정보를 얻어옴
        $member=member_info();
        $group_no = $member[group_no];

// 10등급의 탈퇴 막기
if($member[level] == 10) {
error("10등급 회원은 탈퇴 안됩니다.");
} else {

// 멤버 정보 10등급으로 처리
        /*
        @mysql_query("delete from $member_table where no='$member[no]'") or error(mysql_error());
        */
@mysql_query("update $member_table set level = '10' where no='$member[no]'") or error(mysql_error());

// 쪽지 테이블에서 멤버 정보 삭제 (사용 안함 주석처리)
        /*
        @mysql_query("delete from $get_memo_table where member_no='$member[no]'") or error(mysql_error());
        @mysql_query("delete from $send_memo_table where member_no='$member[no]'") or error(mysql_error());
        */        
// 각종 게시판에서 현재 탈퇴한 멤버의 모든 정보를 삭제 (부하 문제로 인해서 주석 처리)
        /*
        $result=mysql_query("select name from $admin_table");
        while($data=mysql_fetch_array($result)) {
                // 게시판 테이블에서 삭제
                @mysql_query("update $t_board"."_$data[name] set ismember='0', password=password('".time()."') where ismember='$member[no]'") or error(mysql_error());
                // 코멘트 테이블에서 삭제
                @mysql_query("update $t_comment"."_$data[name] set ismember='0', password=password('".time()."')  where ismember='$member[no]'") or error(mysql_error());
        }
        */

// 그룹테이블에서 회원수 -1 (사용 안함 주석처리)
        /*
        @mysql_query("update $group_table set member_num=member_num-1 where no = '$group_no'") or error(mysql_error());
        */

// 회원 탈퇴 사실을 관리자에게 알림.  
$masters=mysql_query("select * from $member_table where is_admin=1||(is_admin=2&&group_no='$group_no')",$connect);
$masters_num=mysql_affected_rows();
$reg_date=time();
$memo=$member[name]."(".$member[user_id].") 님께서 ".$group[name]."그룹에서 탈퇴했습니다. ".$member[level]."등급 이었습니다. ";
for($i=0;$i<$masters_num;$i++){
mysql_data_seek($masters,$i);
$master_info=mysql_fetch_array($masters);
mysql_query("insert into $get_memo_table (member_no,member_from,subject,memo,readed,reg_date) values ($master_info[no],1,'회원탈퇴 안내','$memo',1,'$reg_date')") or error(mysql_error());
mysql_query("update $member_table set new_memo=1 where no=$master_info[no]") or error(mysql_error());
}

// 로그아웃 시킴
        destroyZBSessionID($member[no]);

        // 기존 세션 처리 (4.0x용 세션 처리로 인하여 주석 처리)
        //$HTTP_SESSION_VARS["zb_logged_no"]='';
        //$HTTP_SESSION_VARS["zb_logged_id"]='';
        //$HTTP_SESSION_VARS["zb_logged_time"]='';
        //$HTTP_SESSION_VARS["zb_logged_ip"]='';
        //$HTTP_SESSION_VARS["zb_secret"]='';
        //$HTTP_SESSION_VARS["zb_last_connect_check"] = '0';

        // 4.0x 용 세션 처리
        $zb_logged_no='';
        $zb_logged_time='';
        $zb_logged_ip='';
        $zb_secret='';
        $zb_last_connect_check = '0';
        session_register("zb_logged_no");
        session_register("zb_logged_time");
        session_register("zb_logged_ip");
        session_register("zb_secret");
        session_register("zb_last_connect_check");


        mysql_close($connect);
?>
<script>
alert("정상적으로 탈퇴 처리가 통보 되었습니다.");
opener.window.history.go(0);
window.close();
</script>
<? } ?>


# 영진님이 만드신것(레벨10 회원은 멘트와함께 로그인거절) #
login_check.php차일을 아래처럼 수정하세요.

// 회원로그인이 성공하였을 경우 세션을 생성하고 페이지를 이동함
if($member_data[no]) {

if($member_data[level]==10){
echo"<script>
alert('회원님은 아이디 이용정지입니다.');
history.back();</script>";exit;}
else{
if($auto_login) {
makeZBSessionID($member_data[no]);
}
}
// 4.0x 용 세션 처리

한글사랑님의 원본 : https://www.nzeo.com/bbs/zboard.php?id=cgi_tip&page=1&sn1=&divpage=1&sn=on&ss=off&sc=off&keyword=한글사랑&select_arrange=headnum&desc=asc&no=3411
영진님의 원본 : https://www.nzeo.com/bbs/zboard.php?id=cgi_qa2_new&page=1&sn1=&divpage=31&sn=on&ss=on&sc=off&keyword=비밀맨&select_arrange=headnum&desc=asc&no=173353
번호
제목
글쓴이
151 제로보드에서 관리자 비번 분실시
오작교
2016-06-27 17133  
150 계정을 옮길 때
오작교
2008-11-25 25891  
149 제로보드의 변수 모음 정리
오작교
2008-07-24 53442  
148 참고로 할만한 제로보드 팁 공간가기
오작교
2008-01-11 22702  
147 제로보드 설치하기(이미지)
오작교
2007-11-13 23328  
146 스팸성 댓글 일괄 삭제하기(IP 방식) 1
오작교
2009-09-24 25440  
145 홈페이지 보안강화 도구(Castle) 보급안내 2
오작교
2009-09-14 17483  
144 최근 게시물 nowrap 적용하기
오작교
2009-08-30 20959  
143 활동 로그기록 남기기 2
오작교
2009-04-29 29640  
142 최근 갤러리(슬라이드 형) 스킨
오작교
2009-03-10 21265  
141 회원가입폼에서 생년월일 마우스로 선택하기 1
오작교
2009-03-10 21461  
140 회원가입 폼에서 한/영키를 누르는 수고를 없애기 1
오작교
2009-03-10 18925  
139 최근 게시물에 새코멘트 표시해주기
오작교
2009-03-10 19977  
138 회원가입 - 나이제한하기
오작교
2009-02-27 21066  
137 드롭메뉴에 관한 팁 하나 1
오작교
2009-02-27 19493  
136 2009. 02. 09 - 제로보드 4 보안 패치 p19
오작교
2009-02-27 19782  
135 비회원의 게시판 접근을 막기
오작교
2009-02-26 21491  
134 우리 홈 게시판 스팸 차단 1
오작교
2009-02-06 24185  
133 회원관리 페이지의 리스트 목록 늘리기
오작교
2008-12-19 18980  
132 zb4(Mysql 3.2)에서 zb4(Mysql 5)로 DB 백업본
오작교
2008-12-16 21365  

로그인