웹마스터 팁

faceOff를 기준으로 작성됨

/modules/member/skins/스킨이름/member_info.html
회원 정보 페이지에서 탈퇴 버튼 없애기

<a href="{getUrl('act','dispMemberLeave','member_srl','')}" class="button red"><span>{$lang->cmd_leave}</span></a>
소스를 찾아서 아래처럼 IF문으로 묶어주세요.

<!--@if($member_info->user_id != "테스트용아이디")-->
<a href="{getUrl('act','dispMemberLeave','member_srl','')}" class="button red"><span>{$lang->cmd_leave}</span></a>
<!--@end-->
-----------------------------------------------------------------------------------------------------
/modules/member/skins/스킨이름/member_info.html
편법 써서 탈퇴 페이지 접근하는 것 막기
    <tr>
        <th class="button" colspan="2">
            <span class="button black strong"><input type="submit" value="{$lang->cmd_leave}" accesskey="s" /></span>
            <a href="{getUrl('act','dispMemberInfo','member_srl','')}" class="button"><span>{$lang->cmd_back}</span></a>
        </th>
    </tr>

위 소스를 아래처럼 IF문으로 묶어주세요.
    <!--@if($member_info->user_id != "테스트용아이디")-->
    <tr>
        <th class="button" colspan="2">
            <span class="button black strong"><input type="submit" value="{$lang->cmd_leave}" accesskey="s" /></span>
            <a href="{getUrl('act','dispMemberInfo','member_srl','')}" class="button"><span>{$lang->cmd_back}</span></a>
        </th>
    </tr>
    <!--@end-->
-----------------------------------------------------------------------------------------------------
위 부분까지만 하셔도 상관없습니다.
혹시나 XE를 좀 하시는 분이 탈퇴 시키는 것을 막기 위해서 아래 방법을 따라해주시는 것도 좋은 방법입니다.
이 방법을 따라하다가 수정이 잘못되면 사이트 전체 접속이 안될 수 있으니 조심하세요.
초보자의 경우 차근차근 따라하세요.

/modules/member/member.controller.php
탈퇴 근본적으로 막기

        function procMemberLeave() {
            if(!Context::get('is_logged')) return $this->stop('msg_not_logged');

            // 필수 정보들을 미리 추출
            $password = trim(Context::get('password'));

            // 로그인한 유저의 정보를 가져옴
            $logged_info = Context::get('logged_info');
            $member_srl = $logged_info->member_srl;

            // member model 객체 생성
            $oMemberModel = &getModel('member');

            // member_srl 에 따른 정보 가져옴
            $member_info = $oMemberModel->getMemberInfoByMemberSrl($member_srl);

            // 현재 비밀번호가 맞는지 확인
            if(!$oMemberModel->isValidPassword($member_info->password, $password)) return new Object(-1, 'invalid_password');

            $output = $this->deleteMember($member_srl);
            if(!$output->toBool()) return $output;

            // 모든 세션 정보 파기
            $this->destroySessionInfo();

            // 성공 메세지 리턴
            $this->setMessage('success_leaved');
        }

위 소스를 찾아서 아래 소스로 바꿔줍니다.

        function procMemberLeave() {
            if(!Context::get('is_logged')) return $this->stop('msg_not_logged');

            // 필수 정보들을 미리 추출
            $password = trim(Context::get('password'));

            // 로그인한 유저의 정보를 가져옴
            $logged_info = Context::get('logged_info');
            $member_srl = $logged_info->member_srl;

            // 테스트용 아이디라면 탈퇴 막기
            if($logged_info->user_id == "테스트용아이디") return new Object(-1, 'invalid_request');


            // member model 객체 생성
            $oMemberModel = &getModel('member');

            // member_srl 에 따른 정보 가져옴
            $member_info = $oMemberModel->getMemberInfoByMemberSrl($member_srl);

            // 현재 비밀번호가 맞는지 확인
            if(!$oMemberModel->isValidPassword($member_info->password, $password)) return new Object(-1, 'invalid_password');

            $output = $this->deleteMember($member_srl);
            if(!$output->toBool()) return $output;

            // 모든 세션 정보 파기
            $this->destroySessionInfo();

            // 성공 메세지 리턴
            $this->setMessage('success_leaved');
        }
제목 글쓴이 날짜
게시판 분류(카테고리)를 텍스트&이미지로 나열 하기 [11] Simulz 2007.08.29
템플릿 파일에서 일반 PHP 코드 사용 [3] 화니군 2007.08.28
최신댓글에 닉네임 출력하기... [5] 똑디 2007.08.28
템플릿 컴파일 파일 지우기 귀찮을때 [1] 젬스송 2007.08.28
썸네일 크기 줄이는 법 [6] 느까끼 2007.08.27
홈페이지에 게시판을 iframe, include로 이용하시는분들 느까끼 2007.08.27
올블로그에서 제로보드가 깨질때.. [1] file 스컬리지금어디야 2007.08.27
분류(카테고리) 색상 지정하기. [12] file 송암 2007.08.27
플래쉬 화일을 헤더와 푸터에 넣어보기 [11] file choi2007 2007.08.27
로그인 불가 - APM 관리자일 때 (일반적인 경우 아님) [3] Sx3 2007.08.26
0.1.1 패치하시면 가입시 기본 회원 그룹 선택해야해요. [2] 다케루 2007.08.26
확장변수 [2] 다케루 2007.08.25
(달력/Archive 문제해결법) 날짜로 검색하는 것이 제대로 안될때 [8] 베니 2007.08.25
w3c.org의 웹페이지 유효성 검사기 file 바람처럼831 2007.08.24
위지웍에디터가 갑자기 작동을 안할때 팔공산 2007.08.23
제로보드 관리자 레벨이 관리자 레벨로 안나올때 [5] 나무넷 2007.08.23
여러 개의 메뉴를 달아보자! [5] file 고라리 2007.08.23
상단메뉴 개수를 지정한 만큼만 보여주고자 할 경우 [9] 똑디 2007.08.23
최신이미지 추출시 사진 아래 내용들 중간 정돈 방법 [4] file 팔공산 2007.08.23
Zbxe 서버 이전하기 [4] 팔공산 2007.08.22