크게 작게 인쇄

스팸 회원 삭제시 동시에 관련 글 / 댓글 자동 삭제

----------------------------------------------------------------------
해당글은 XE공홈에서 퍼온글입니다. 작성자 - sejin7940
----------------------------------------------------------------------
 
수정방법은 아래에 기록해둡니다.
XE 1.5 와 XE 1.7 이 조금 다릅니다.  1번은 버전에 따라 수정법이 다르고,  2번.3번 사항은 동일합니다.
 
혹시나의 상황을 대비해, DB는 꼭 백업을 해두고 진행하세요 ^^
 
 
1. modules/member/tpl/member_list.html 에서
 
(1) XE 1.5 기반에서 수정방법
130번째줄 부근의
<span class="btn"><button type="submit" name="type" value="delete">{$lang->cmd_delete}</button></span> 
밑에다가 추가
<span class="btn"><button type="submit" name="type" value="spam">스팸처리</button></span>

 

(2) XE 1.7 기반에서 수정방법
1) 
<a href="#listManager" data-value="delete" class="modalAnchor _member x_btn">{$lang->delete}</a>  
밑에다가 추가 (2군데 있음. 26번째줄과 105번째줄 부근)
<a href="#listManager" data-value="spam" class="modalAnchor _member x_btn">스팸처리</a>


2) 
166번째 줄 부근의
<button type="submit" name="type" value="modify|delete" class="x_btn x_btn-inverse">{$lang->confirm}</button>
를 아래걸로 교체
<button type="submit" name="type" value="modify|delete|spam" class="x_btn x_btn-inverse">{$lang->confirm}</button>

 
 
이후에 기술할 2. 3. 은   XE 1.5 와 XE 1.7 모두 동일함

2. modules/member/member.admin.controller.php 에서
function procMemberAdminSelectedMemberManage() 함수 내부에

case 'delete':{  위에다가 추가

    
     case 'spam':{   // sejin7940 스팸회원 삭제 위해
      $output = $this->sejin7940_spamMember($member_srl);
      if(!$output->toBool()) {
       $oDB->rollback();
       return $output;
      }
      break;
     }
 
 
3. modules/member/member.admin.controller.php  에서
제일 끝에 함수 하나 추가  (제일 끝이란 끝부분의  } ?>  위를 말합니다)
 
 
 
//  sejin7940 - 스팸회원 삭제/ 관련 글/ 관련 댓글 자동 삭제 및 IP 스팸등록 기능
  function sejin7940_spamMember($member_srl) {
   // 스팸 유저가 쓴 모든 글 자동 삭제
   $oDocumentModel = &getModel('document');
   $oDocumentController = &getController('document');
   $obj->member_srl = $member_srl;
   $obj->list_count = '99999999999';
   
   $columnList = array('document_srl','ipaddress');
   $document_list = $oDocumentModel->getDocumentList($obj,false,true,$columnList);
   foreach($document_list->data as $key_document => $val_document) {
    // 회원 IP 스팸에 등록
    $args_spam->ipaddress = $val_document->get('ipaddress');
    if($args_spam->ipaddress &&  ($ipaddress_bk != $args_spam->ipaddress )) {
     $output_spam = executeQuery('spamfilter.isDeniedIP', $args_spam);
     if(!$output_spam->data->count) {
      $ipaddress_bk = $args_spam->ipaddress;
      executeQuery('spamfilter.insertDeniedIP', $args_spam);
     }
    }
    // 글 삭제
    $oDocumentController->deleteDocument($val_document->document_srl);
   }
   // 스팸 유저가 쓴 모든 댓글 자동 삭제
   $oCommentModel = &getModel('comment');
   $obj->search_target = 'member_srl';
   $obj->search_keyword = $member_srl;
   $comment_list = $oCommentModel->getTotalCommentList($obj);
   $oCommentController = &getController('comment');
   foreach($comment_list->data as $key_comment => $val_comment) {
    // 회원 IP 스팸에 등록
    $args_spam->ipaddress = $val_comment->get('ipaddress');
    if($args_spam->ipaddress &&  ($ipaddress_bk != $args_spam->ipaddress )) {
     $output_spam = executeQuery('spamfilter.isDeniedIP', $args_spam);
     if(!$output_spam->data->count) {
      $ipaddress_bk = $args_spam->ipaddress;
      executeQuery('spamfilter.insertDeniedIP', $args_spam);
     }
    }
    $oCommentController->deleteComment($val_comment->comment_srl);
   }
   // 회원정보 삭제
   $oMemberController = &getController('member');   
   $oMemberController->memberInfo = null;
   $oMemberController = &getController('member');
          $output = $oMemberController->deleteMember($obj->member_srl);
                 if(!$output->toBool()) return $output;
   return $output;
  }



※ 로그인 하시면 원본파일을 볼 수 있습니다. ※

0
코멘트 0
자동등록방지 코드
XE팁 | 전체게시물 20
안내

포인트안내닫기

  • 글읽기0
  • 글쓰기100
  • 댓글쓰기50
  • 다운로드-500
XE팁리스트
번호 제목 글쓴이 날짜 조회 추천
20 텍스트
스팸 회원 삭제시 동시에 관련 글 / 댓글 자동 삭제
링크
슈퍼맨 웹스터디 05-23 3733 0
19 파일첨부 +1 링크 슈퍼맨 웹스터디 05-16 3044 0
18 텍스트 슈퍼맨 웹스터디 05-14 2991 1
17 텍스트 슈퍼맨 웹스터디 09-07 3261 0
16 텍스트 +1 링크 슈퍼맨 웹스터디 04-16 3233 0
15 텍스트 링크 슈퍼맨 웹스터디 03-31 3053 0
14 텍스트 링크 슈퍼맨 웹스터디 02-21 3839 0
13 텍스트 슈퍼맨 웹스터디 02-21 2752 0
12 텍스트 슈퍼맨 웹스터디 02-15 2790 0
11 텍스트 +2 링크 슈퍼맨 웹스터디 02-08 3653 0
10 파일첨부 링크 슈퍼맨 웹스터디 02-01 2888 0
9 텍스트 +2 슈퍼맨 관리자 12-15 2990 0
8 파일첨부 +1 슈퍼맨 웹스터디 12-04 4201 1
7 답변 텍스트 슈퍼맨 웹스터디 12-04 2820 0
6 파일첨부 슈퍼맨 웹스터디 12-04 4317 0
5 텍스트 슈퍼맨 웹스터디 12-04 3163 0
4 텍스트 슈퍼맨 웹스터디 12-04 2638 0
3 텍스트 슈퍼맨 웹스터디 12-04 2691 0
2 텍스트 +1 슈퍼맨 웹스터디 12-04 2409 0
1 파일첨부 링크 슈퍼맨 웹스터디 12-04 2731 0