웹마스터 팁

학습 목표
1. 회원 정보에서 글, 댓글, 첨부 갯수를 보여주기
P051.png

2. 회원 목록 관리자 페이지에서 글, 댓글 작성 갯수를 보여주기
P037.png


작동 원리
document, comment 테이블을 member_srl로 쿼리를 한다.

이때 쿼리 XML 파일을 만들어 줘야 함

#4. 파일 첨부 수를 구하는 소스 변경

작업준비
※ XML 파일은 어디에 넣어도 상관이 없습니다만 다른 용도로 사용을 하기 위해 각 모듈의 쿼리 폴더에 복사합니다.

아래 파일을 modules\comment\queries 폴더에 복사합니다.
getMemberCommentCount.xml

아래 파일을 modules\document\queries 폴더에 복사합니다.
getMemberDocumentCount.xml
getMemberUploadedCount.xml



1. 회원 정보 페이지 작업하기
modules\member\skins\스킨 폴더의 member_info.html 파일을 편집합니다.
70번대 줄에 아래 소스를 추가합니다.

    {@
        $obj->member_srl = $member_info->member_srl;
        $output_document_count = executeQuery("document.getMemberDocumentCount",$obj);
        $output_comment_count = executeQuery("comment.getMemberCommentCount",$obj);
        $output_attach_count = executeQuery("document.getMemberUploadedCount",$obj);
    }
    <tr>
        <th scope="row">{$lang->count_document}</th>
        <td>{$output_document_count->data->count}</td>
    </tr>
    <tr>
        <th scope="row">{$lang->count_comment}</th>
        <td>{$output_comment_count->data->count}</td>
    </tr>
    <tr>
        <th scope="row">{$lang->count_attach}</th>
        <td>{$output_attach_count->data->count}</td>
    </tr>

변수 대신 직접 한글을 사용해도 되지만 언어별로 나타내려면 lang 파일을 편집합니다.


modules\member\lang 폴더의 ko.lang.php 파일을 편집합니다.
아래 소스를 적당한 곳에 추가합니다.

$lang->count_document = '글 수';
$lang->count_comment = '댓글 수';




2. 회원 목록 관리 페이지 작업하기
member 모듈member.admin.view.php 파일을 편집합니다.
dispMemberAdminList 함수의 중간에 아래 소스 중 굵은 부분을 삽입합니다.

        function dispMemberAdminList() {
            // member model 객체 생성후 목록을 구해옴
            $oMemberModel = &getAdminModel('member');
            $output = $oMemberModel->getMemberList();

            foreach($output->data as $key => $value) {
                $output_document_count = executeQuery("document.getMemberDocumentCount", $value);
                $output_comment_count = executeQuery("comment.getMemberCommentCount", $value);
                $output->data[$key]->document_count = $output_document_count->data->count;
                $output->data[$key]->comment_count = $output_comment_count->data->count;
         }


            // 템플릿에 쓰기 위해서 context::set
            Context::set('total_count', $output->total_count);
            Context::set('total_page', $output->total_page);
            Context::set('page', $output->page);
            Context::set('member_list', $output->data);
            Context::set('page_navigation', $output->page_navigation);

            // 템플릿 파일 지정
            $this->setTemplateFile('member_list');
        }



modules\member\tpl
폴더에서 member_list.html 파일을 편집합니다.


<thead></thead> 사이에 아래 소스를 삽입하고,

        <th scope="col">Document</th>
        <th scope="col">Comment</th>

<tbody></tbody> 사이에 아래 소스를 삽입합니다.
        <td class="tahoma">{$val->document_count}</td>
        <td class="tahoma">{$val->comment_count}</td>


※ 소스를 참고하여 포인트 모듈의 회원 목록에서도 적용할 수 있습니다.


설문조사 (1. 회원 정보)
lh blank rh
설문조사 종료일: 2007-11-05
blank
A : 회원 정보에 작성 글, 댓글 수를 보여주는 기능
blank
lb blank rb
태그 연관 글
  1. [2017/03/02] 묻고답하기 관리자 회원 목록에서 설명이 보이게 하는 방법 문의 드립니다. by khami *2
  2. [2016/12/13] 묻고답하기 회원목록보기 가능할까요? by 권만주 *2
  3. [2014/04/09] 묻고답하기 닉네임과 이름 가입시 회원정보 변경시 질문입니다. by xe초보자 *2
  4. [2012/05/17] 묻고답하기 회원정보 팝업창이 안나타나게 하는 방법좀 알려주세요. by 펜잘 *1
  5. [2011/09/01] 묻고답하기 회원DB이전시 비밀번호를 XE로 코딩할수 있나요? by 쿠쿠리~* *2